下列程序先消除输入字符串的前后空格,再判断是否是“回文”(即字符串正读和倒读都是一样),若是则输出YES,否则输出NO。

#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移动到串首空格后一个位置
		p++;
		
	n=strlen(s);
	q=s+n-1;
	while ( *q == ' ')	//q移动到末尾空格前一个位置
		q--;
	while (p<q&&*p ==*q){	//判断回文
		p++;
		q--;
	}
	
	if ( p<q )
		printf("NO\n");
	else
		printf("YES\n");
	return 0;
}
Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐