7-4 回文判断 (20分)
回文是指正读反读均相同的字符序列,如“abba”和“abdba”均是回文,但“good”不是回文。编写一个程序,使用栈判定给定的字符序列是否为回文。
输入格式:
输入待判断的字符序列,按回车键结束,字符序列长度<20。
输出格式:
若字符序列是回文,输出“YES”;否则,输出“NO”。
输入样例:
abdba
输出样例:
YES
#include<stdio.h>
#include<string.h>
int main()
{
char a[10];
int len,j,i,flag;
gets(a);
len=strlen(a);
j=len-1;
for(i=0;i<len/2;i++){
printf("%d %d\n",a[i],a[j]);
if(a[i]==a[j]){
flag=1;
j--;
} else{
flag=0;
break;
}
}
if(flag==0){
printf("NO");
}else{
printf("YES");
}
return 0;
}