C语言判断回文字符串
我的思路:
回文:首尾回环
首和尾对比,两者向中间靠近,完全相同则回文,有一处不相同则不是回文
#include<stdio.h>
void str_back(char *str);
int main()
{
char str[100] = {0};
printf("请输入一个字符串:\n");
scanf("%s",str);
str_back(str);
return 0;
}
void str_back(char *str)
{
int len = 0, i = 0, tmp;
while( str[len] != '\0' ) //求长度
{
len++;
}
tmp = len; //len会改变,用tmp暂存
for(i=0;i<tmp;i++,len--)
{
if(str[i] == str[len-1]) //首尾相同
continue;
else
{
printf("不是回文\n");
return;
}
}
printf("回文\n");
}
运行结果