下列程序先消除输入字符串的前后空格,再判断是否是“回文”(即字符串正读和倒

问题描述:

下列程序先消除输入字符串的前后空格,再判断是否是“回文”(即字符串正读和倒
读都是一样),若是则输出YES,否则输出NO.请填空.
#include
#include
int main(void)
{
chars[80],ch,*p,*q;
inti,j,n;
gets(s);
p = __________;
while ( *p == ‘ ‘)__________;
n = strlen(s);
q = __________;
while ( *q == ‘ ‘)__________;
while (__________&& *p ==*q)
{
p++;
_______;
}
if ( p
1个回答 分类:综合 2014-10-11

问题解答:

我来补答
#include <stdio.h>
#include <string.h>
int main(void)
{
char s[80], ch, *p, *q;
int i, j, n;
gets(s);
p = s;
while ( *p == ' ')p++;
n = strlen(s);
q = s+n-1;
while ( *q == ' ')q--;
while (p<q && *p ==*q)
{
p++;
q--;
}
if ( p<q )
printf("NO\n");
else
printf("YES\n");
return 0;
}
再问: 11行的 q = s+n-1;是什么意思
 
 
展开全文阅读
剩余:2000