Problem Description
“回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。请写一个程序判断读入的字符串是否是“回文”。
Input
输入包含多个测试实例,输入数据的第一行是一个正整数n,表示测试实例的个数,后面紧跟着是n个字符串。
Output
如果一个字符串是回文串,则输出"yes",否则输出"no".
Sample Input
4 level abcde noon haha
Sample Output
yes no yes no
#include <stdio.h>
#include <string.h>
main()
{
int n;
while(scanf("%d",&n)!=EOF) //输入包含多个测试实例
{
int i,j,x,y;
char a[100],b[100],c[100],d[100];
getchar();
for(i=0;i<n;i++)
{
gets(a);
x=strlen(a);
y=0;
for(j=0;j<x;j++)
{
if(a[j]==a[x-j-1])
y++;
}
if(y>=x/2)
b[i]=1;
else
b[i]=0;
}
for(i=0;i<n;i++)
{
if(b[i]==0)
printf("no\n");
else
printf("yes\n");
}
}
}