77 回文问题
作者: 朱星垠 时间限制: 1S章节: 字符串
问题描述 :
输入一串字符,其长度小于200,判断该串字符是否构成回文。 所谓回文是指从左到右和从右到左读一串字符的值是一样的,如:ABCBA。
输入说明 :
你的程序需要从标准输入设备(通常为键盘)中读入多组测试数据。每组输入数据由一行字符组成,它们之间没有空格,在行首和行尾没有多余的空格。
输出说明 :
对每组测试数据,你的程序需要向标准输出设备(通常为启动该程序的终端)依次输出一组对应的答案:构成回文的输出Yes ,反之输出 No。所有数据前后没有多余的空格,两组数据之间也没有多余的空行。
输入范例 :
abcba
abcbb
输出范例 :
Yes
No
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int is_huiwen(char a[], int x)//回文判断,又是之前写过的函数
{
int i, flag = 1;
for (i = 0; i <= x / 2; i++)
{
if (a[i] != a[x - i - 1])
{
flag = 0;
break;
}
}
return flag;
}
int main()
{
int is_huiwen(char a[], int x);
int flag;
char str[200];
while(gets(str))
{
flag=is_huiwen(str,strlen(str));
if(flag==1)
printf("Yes\n");
else
printf("No\n");
}
return 0;
}
回头得把我存在vs2019的函数拿出来重新理一遍了,过几天放到CSDN上,最近的题都是拿出来直接用的。