问题描述 :
输入一串字符,其长度小于200,判断该串字符是否构成回文。 所谓回文是指从左到右和从右到左读一串字符的值是一样的,如:ABCBA。
输入说明 :
你的程序需要从标准输入设备(通常为键盘)中读入多组测试数据。每组输入数据由一行字符组成,它们之间没有空格,在行首和行尾没有多余的空格。
输出说明 :
对每组测试数据,你的程序需要向标准输出设备(通常为启动该程序的终端)依次输出一组对应的答案:构成回文的输出Yes ,反之输出 No。所有数据前后没有多余的空格,两组数据之间也没有多余的空行。
#include<stdio.h>
#include<string.h>
int main()
{
char str[200];
int count=0,flag=0;
while(gets(str))
{
while(str[count]!=NULL) count++;
if(count==1) printf("Yes\n");
else
{
for(int i=0;i<count/2;i++)
{
if(str[i]!=str[count-i-1])
{
flag=1;
break;
}
}
if(flag==1) {
printf("No\n");
flag=0;
}
else printf("Yes\n");
}
memset(str,0,sizeof(str));
count=0;
}
return 0;
}

2490

被折叠的 条评论
为什么被折叠?



