您的位置:首页 > 其它

判断一个字符是否是另一个字符的旋转字符串

2015-09-15 16:58 633 查看

方法一:将字符串1与字符串1连接,再判断字符串2是否为连接后的字符串1的子字符串,可以使用库函数实现。

#include<stdio.h>

#include<stdlib.h>

#include<string.h>

void revovle(char *str1,char *str2)

{

int len1=strlen(str1);

int len2=strlen(str2);

strncat(str1,str1,6);

if(strstr(str1,str2)!=NULL && len1==len2)

printf("是旋转字符!\n");

else

printf("不是旋转字符!\n");

}

int main()

{

char a[20]="abcdef";

char b[]="bcdefa";

revovle(a,b);

system("pause");

return 0;

}

方法二:每一次旋转一个字符,并进行比较。

#include<stdio.h>

#include<stdlib.h>

#include<string.h>

int revovle(char *str1,char *str2)

{

int len=strlen(str1);

int i,j;

char temp;

for(i=0;i<len;i++)

{

temp=str1[0];

for(j=0;j<len-1;j++)

{

str1[j]=str1[j+1];

}

str1[len-1]=temp;

if(strcmp(str1,str2)==0)

{

printf("是旋转字符!\n");

return 0;

}

}

printf("不是旋转字符!\n");

return 0;

}

int main()

{

char a[]="abcdef";

char b[]="bcdefa";

revovle(a,b);

system("pause");

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: