(C++)输入一个字符串,判断其是否是回文字符串(回文字符串就是正序与反序是相同的字符串),若是输出"Yes!",否则输出"No!"
如:
输入:“ABCDDCBA"
输出:“Yes!”
输入:“ADCVVds”
输出:“No!”
#include<iostream>
#include<cstring>
#include<cstdio>
#define MAXSIZE 100
using namespace std;
int main(){
int flag;
char str1[MAXSIZE],str2[MAXSIZE];
while(gets(str1)!=NULL){
for(int i=0,j=strlen(str1)-1;i<strlen(str1),j>-1;j--,i++){
str2[j]=str1[i];//将str1的值逆序赋给字符数组str2
}
for(int k=0;k<strlen(str1);k++){
if(str1[k]!=str2[k]){//一旦有一个元素与逆序后的不同,就退出循环
flag=0;
break;
}
else flag=1;
}
if(flag) printf("Yes!\n");
else printf("No!\n");
}
}
运行结果截图: