F - 判断字符串是否为回文
题目描述
输入一个字符串,输出该字符串是否回文。回文是指顺读和倒读都一样的字符串。
输入格式
输入为一行字符串(字符串中没有空白字符,字符串长度不超过 100)。
输出格式
如果字符串是回文,输出"yes";否则,输出"no"。。
Sample Input
abcdedcba
Sample Output
yes
思路
判断回文的话我们从第一位开始,和最后一位比较,一直比较到最中间的那位
定义一个标记,如果有不相同的字符,则改变标记的值
#include<string.h>
#include<stdio.h>
int main()
{
char s[1086];
gets(s);
int l=strlen(s)-1; // 判断回文只需要判断到中间一位就行了
int r=l/2;
int f=0; // 标记一下
for(int i=0;i<=r;i++)
{
if(s[i]!=s[l-i])
{
f=1; // 如果不是回文则改变标记
printf("no");
break;
}
}
if(f==0)
printf("yes");
return 0;
}