#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int Same_Char(char * s1,char * s2,int len)
{
if (strcmp(s1, s2) == 0)//没有发生旋转,直接返回1
{
return 1;
}
if (strlen(s1) != (strlen(s2)))//长度不同,直接返回-1
{
return -1;
}
for (int i = 0; i < len-1; i++)//
{
char tmp = *s1;//保存*s1首元素地址位置
for (int j = 0; j < len - 1; j++)//外层循环一次内部for循环一次,完成一次头放到尾
{
*(s1 + j) = *(s1 + j + 1);
}
*(s1 + len - 1) = tmp;//把s1首字符放到最后
if ((strcmp(s1, s2) == 0))//旋转后的s1与s2比较
{
return 1;
}
}
return -1;
}
int main()
{
char s1[1000] = { 0 };
char s2[1000] = { 0 };
printf("请输入原字符串:");
gets(s1);
printf("\n");
printf("请输入旋转后字符串:");
gets(s2);
int len = strlen(s1);
int ret=Same_Char(s1, s2, len);
if (ret == 1)
{
printf("Same");
}
else
{
printf("NO Same");
}
return 0;
}