编写一个程序,判断输入的一个字符串是否是回文。若是,则输出YES,否则,输出No

如题所述

#include <stdio.h>
#include <string.h>
main()
{ char a[100];
  int i,j;
  gets(a);
i=0;
j=strlen(a)-1;
while(i<j)
{if(a[i]==a[j])
{i++;j--;}
else
break;}
if(i>=j) printf("是回文.\n");
else   printf("不是回文.\n");}
选自《C语言程序设计—从入门到进阶》,人民邮电出版社
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-12-16
#include <stdio.h>
#include <stdlib.h>
int main()
{char input[100] = {0};
int str_bound = 0; int i, res_ok = 1; printf("Enter a string.\n");
scanf("%s", input);
str_bound = strlen(input) -1; for (i = 0; i <= str_bound/2; i++) {
if (*(input + i) != *(input + str_bound -i)) { res_ok = 0;
break;
} }
if(res_ok) printf("YES\n");
else
printf("NO\n"); return 0;
}
相似回答