题目描述
读入一串字符,判断是否是回文串。“回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。
输入
一行字符串,长度不超过255。
输出
如果是回文串,输出“YES”,否则输出“NO”。
样例输入
12321样例输出
YES
c++代码
#include<iostream>
#include<string>
using namespace std;
int main()
{
string str;
cin>>str;
int n=str.length();
int i,j;
for(i=0;i<n/2;i++){
if(str[i]!=str[n-1-i])
break;
}
if(i==n/2) cout<<"YES"<<endl;
else cout<<"NO"<<endl;
return 0;
}
c代码
#include<cstdio>
#include<cstring>
const int maxn=256;
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[maxn];
while(gets(str)){
bool flag=judge(str);
if(flag==true) printf("YES\n");
else printf("NO\n");
}
return 0;
}
c语言--字符数组的输入输出
(1)scanf输入:
%s用来输入一个字符串并存在字符数组里,通过空格和换行来识别一个字符串的结束,使用它时不用加&;
%c能识别空格和换行作为输入。
(2)getchar输入-putchar输出(单个字符)
getchar可以把输入中每行末尾的换行符吸收掉
(3)gets输入和puts输出(字符串)
gets识别\n作为输入结束,因此scanf后如果用gets,要先用getchar吸收换行符;
puts用来输出一行字符串,即将一维数组(或二维数组的一维)在界面输出,并紧跟一个换行。
(4)字符数组char str【12】
字符数组可以通过直接复制字符串来初始化 如:char str[4]="good”;
(5)string.h头文件(c++文件中写cstring)包含了很多用于字符数组的函数
常用函数如下:
strlen求字符串长度
strcmp比较2个字符串是否一样
strcat字符串连接操作
strcpy字符串拷贝操作
strncat字符串连接操作(前n个字符)
strncpy字符串拷贝操作(前n个字符)
strchr查询字串
strstr 查询子串
c++ 的头文件 string
https://blog.youkuaiyun.com/superna666/article/details/52809007/