7-12 判断回文字符串
分数 8
全屏浏览
切换布局
作者 颜晖-历年试卷
单位 浙大城市学院
输入一个字符串,判断该字符串是否为回文。回文就是字符串中心对称,从左向右读和从右向左读的内容是一样的。
输入格式:
输入在一行中给出一个不超过80
个字符长度的、以回车结束的非空字符串。
输出格式:
输出在第1行中输出字符串。如果它是回文字符串,在第2行中输出Yes
,否则输出No
。
输入样例1:
level
输出样例1:
level
Yes
输入样例2:
1 + 2 = 2 + 1 =
输出样例2:
1 + 2 = 2 + 1 =
No
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
栈限制
8192 KB
#include <stdio.h>
int main(void)
{
int n=0,i,j;
int ret=1;
char token[80]={0};
while(1){
token[n]=getchar();
// n++;
if(token[n]=='\n'){
break;
}
n++;
}
if(n<=1){
for(i=0;i<n;i++){
// printf("%c",token[n]);}
printf("%c",token[i]);}
printf("\nYes\n");
return 0;
}
for(i=0,j=n-1;i<n/2,j>n/2;i++,j--){
if(token[i]!=token[j]){
ret=0;
break;
}
}
for(i=0;i<n;i++){
// printf("%c\n",token[n]);
printf("%c",token[i]);
}
if(ret){
printf("\nYes\n");
}else{
printf("\nNo\n");
}
return 0;
}