【入门】判断是否构成回文
时间限制: 1.000 Sec 内存限制: 16 MB
题目描述
输入一串字符,字符个数不超过100,且以"."结束。 判断它们是否构成回文。
***输入***
输入只有一行,包括一串字符.
***输出***
输出只有一行.TRUE 或者FALSE
***样例***
输入
12321.
输出
TRUE
提示:
所谓回文指从左到右和从右到左读一串字符的值是一样的,如12321,ABCBA,AA等。先读入要判断的一串字符(放入数组letter中),并记住这串字符的长度,然后首尾字符比较,并不断向中间靠拢,就可以判断出是否为回文。
分析如下:
由提示可知,回文串从左到右和从右到左是一样的,可以按照提示的方法来写,我是重新设一个数组用来存放从右到左的字符串,然后两个字符串进行比较,一样的话就是回文串,否则就不是。
代码如下:
#include <stdio.h>
#include <stdlib.h>
#include<string.h>
int main()
{
char a[105];
scanf("%s",a);
int i,length;
char b[105];
length=strlen(a)-1;
for(i=0;i<length;i++)
{
b[length-i-1]=a[i];
}
for(i=0;i<length;i++)
{
if(a[i]!=b[i])
break;
}
if(i==length)
printf("TRUE");
else
printf("FALSE");
return 0;
}