【题目描述】
输入一串字符,字符个数不超过100,且以“.
”结束。 判断它们是否构成回文。
【输入】
一行字符串。
【输出】
是否为回文串。是输出“Yes
”,否输出“No
。”
【输入样例】
abccb
【输出样例】
No
代码实现
#include <stdio.h>
/*
2044:【例5.12】回文字串
*/
int main(){
char a[100];
int i,n=0,p,q;
char c;
//输入一行字符串,以“.”结束
scanf("%c",&c);
for(i=0;i<100 && c!='.';i++){
a[i] = c;
n++;
scanf("%c",&c);
}
//定义两个变量分别记录第一个和最后一个下标
p=0;
q=n-1;
//比较n/2个数是否相等
for(i=0;i<n/2;i++,p++,q--){
//当p下标字符 不等于 q下标的数返回No
if(a[p] != a[q]){
printf("No");
return;
}
}
printf("Yes");
}