Palindromes _easy version
Problem Description
“回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。请写一个程序判断读入的字符串是否是“回文”。
Input
输入包含多个测试实例,输入数据的第一行是一个正整数n,表示测试实例的个数,后面紧跟着是n个字符串。
Output
如果一个字符串是回文串,则输出"yes",否则输出"no".
Sample Input
4
level
abcde
noon
haha
Sample Output
yes
no
yes
no
Author
lcy
Source
C语言程序设计练习(五)
解题思路
喝汤一样
AC
#include<iostream>
using namespace std;
int main()
{
int n,i,j;
char a[105];
bool flag;
while (cin >> n) {
while (n--) {
flag = true;
cin >> a;
i = 0;
j = strlen(a)-1;
while (flag == true) {
if (i > j)break;
if (a[i] != a[j])flag = false;
else {
i++;
j--;
}
}
if (flag == true)cout << "yes" << endl;
else cout << "no" << endl;
}
}
return 0;
}
2024.03.12
#include<stdio.h>
#include<iostream>
#include<string>
using namespace std;
bool back_judge(char sentence[]) {
int i = 0, j = strlen(sentence) - 1;
bool flag = true;
while (i < j)
if (sentence[i] == sentence[j]) {
i++; j--;
}
else {
flag = false;
break;
}
return flag;
}
int main()
{
int n;
char sentence[105];
while (scanf("%d", &n) != EOF) {
getchar();
while (n--) {
cin.getline(sentence, 105);
if (back_judge(sentence) == true)
printf("yes\n");
else
printf("no\n");
//printf("%s", sentence);
}
}
return 0;
}