1145 回文串
时间限制:1000MS 代码长度限制:10KB
提交次数:4977 通过次数:2922
题型: 编程题 语言: G++;GCC
Description
读入一行字符串(不多于80个字符,以回车结束),判断该字符串是否为回文串(即从左向右拼写与从
右向左拼写是一样的),是则输出Y,不是则输出N。
输入格式
一行字符串
输出格式
是则输出Y,不是则输出N
输入样例
abba
输出样例
Y
出错1:(不知道为什么codeblocks运行正确)
#include<stdio.h>
#include<string.h>
int main()
{
char a[81]={0};
char b[81]={0};
scanf("%s",a);
int length=strlen(a);
//b[length]='\0';
for(int i=0;a[i]!='\0';i++)
{
b[length-1]=a[i];
length--;
}
if(strcmp(a,b)==0)
printf("Y");
else
printf("N");
}
出错2:
#include<stdio.h>
#include<string.h>
int main(){
char a[81];
int i,j,length;
scanf("%s",a);
length=strlen(a);
for(i=0;i<=2/length;i++)
if(a[i]!=a[length-i-1])
break;
if(i>2/length)
printf("Y");
else
printf("N");
}
标程
#include "stdio.h"
#include "string.h"
main()
{ int i, j,length;
char a[100];
scanf("%s",a);
length=strlen(a);
for(i=0, j=length-1;i<j; i++, j--)
if(a[i]!=a[j]) break;
if(i>=j)
printf("Y");
else
printf("N");
}