用C语言写一个程序判断一个字符串是否是回文

2024-11-16 15:01:51
推荐回答(3个)
回答1:

#include
#include
int main()
{
int a,b=0,i,j; //b用于计数,a用于读取字符串长度,i,j表示字符数组下标
char c[1000];
printf("请输入字符串:\n");
gets(c);
a=strlen(c);
if(a%2==0) //当长度(不包含结束符)为偶数时
{
for(i=0,j=a-1;i {
if(c[i]==c[j])
{
b=b+2;
}
}
if(b==a) //当相等字符串个数=输入字符串个数时
printf("yes\n");
else
printf("no\n");
}
else if(a%2!=0) //当长度(同上)为奇数时
{
if(a==1) //当字符串为1个时
{
printf("yes\n");
}
else
{
for(i=0,j=a-1;i {
if(c[i]==c[j])
{
b+=2;
}
}
if(b==a-1) //当相等字符串个数=输入字符串个数-1时
printf("yes\n");
else
printf("no\n");
}
}
return 0;
}

回答2:

int main()
{
char s[]="abcba";//需要判断的字符串
int i;
//判断是否是回文
for(i=0;i<(strlen(s)/2);i++)
{
if(s[i]!=s[strlen(s)-i-1])
{
break;
}
}
if(i>=(strlen(s)/2))
{
printf("yes!");
}
else
{
printf("no!");
}
getchar();
return 0;
}

回答3:

什么叫回文