#include <stdio.h>
//此代码为判断回文字符串
int Palindrome(char *str)
{
int i = 0, j = 0;//用于判断的变量
while (str[i] != '\0')
i++; //得到该数组有多少个元素
i--; //也可以i=i-1; 获取字符串最后一个位置(因为数组下标从0开始)
for (; j <= i; i--,j++) //将字符串分为前后两部分
{
if (str[i] != str[j]) //判断是否回文
break;//只有不回文才跳出
}
if (j <= i) //因为for语句的第三条i--和j++在循环结束后还会执行一次,因此j>i才表示前半部分和后半部分都对照了一遍
return 0;
else
return 1; }
int main()
{
char str[100];
gets(str);//从键盘输入,存入数组
if(Palindrome(str)) //调用函数,因为数组名本身就是首地址,所以直接用数组名作实参
printf("Yes");
else printf("No");
return 0;
}