c语言编程题求大神帮忙!

输入字符串,判断字符串中的字母是否构成回文串。回文串是指字符串的正序与逆序相同的字符串,如“abba”“aba”“aa”都是回文串,而“abbc”“abc”“ac”不是回文串。
输入字符串,字符串由字母和其他非字母字符组成,长度不超过80个字符。
字母构成回文串,输出"回文串 YES" 字母不构成回文串,输出"字符串 NO"
例如输入a13b2b3456a,输出accb NO

第1个回答  2017-12-18
#include<stdio.h>
int main(void)
{
char string[1000];
char newStr[1000];
int i,k=0,j;
gets(string);
for (i = 0; string[i]; i++)
{
if ((string[i] <= 'z'&&string[i] >= 'a') || (string[i] <= 'Z'&&string[i] >= 'A'))
{
newStr[k++] = string[i];
}
}
newStr[k] = '\0';
i = 0, j = k - 1;
while (i < j)
{
if (newStr[i] != newStr[j])
{
break;
}
i++;
j--;
}
if (i < j)
printf("%s No\n", newStr);
else
printf("回文串 YES\n");

return 0;
}

本回答被提问者和网友采纳
相似回答