刷题之回文串

读入一段字符,判断是否是回文串

输入描述:
一个字符串,长度不超过255.

输出描述:
输出答案(YES\NO).

示例1
输入
12321
输出
YES

#include<cstdio>
#include<cstring>

const int MAX = 255;

bool judge(char str[]){
    
    
	int len = strlen(str);
	for(int i = 0;i < len/2;i++){
    
    
		if(str[i] != str[len - 1 - i]){
    
    
			return false;
		}
	}
	return true;
}

int main(){
    
    
	char str[MAX];
	while(gets_s(str)){
    
    
		bool flag = judge(str);
		if(flag == true){
    
    
			printf("YES\n");
		}
		else{
    
    
			printf("NO\n");
		}
	}
	return 0;
}

在做本题的时候,注意gets_s(),一开始使用gets(),一直报错。

get_s()与scanf_s()的区别:
gets_s(s):功能为读入一行,并将换行符转换为字符串结束符。
scanf_s("%s",s):读入时,遇到空白字符,包括空格,制表符,换行符时均会停止输入。

猜你喜欢

转载自blog.csdn.net/weixin_44809329/article/details/106392633