C语言输入一个字符串,判断其是否为回文。如输入:abcba或者2k66k2等形式的字符输出“是回文”,如输入: 12323或者abcbd等形式的字符输出“不是回文"
时间: 2023-06-12 08:02:17 浏览: 49
好的,您可以使用以下的 C 语言代码来判断一个字符串是否为回文:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int i, len, flag = 1;
printf("请输入一个字符串:");
scanf("%s", str);
len = strlen(str);
for(i = 0; i < len/2; i++)
{
if(str[i] != str[len-i-1])
{
flag = 0;
break;
}
}
if(flag)
{
printf("%s是回文\n", str);
}
else
{
printf("%s不是回文\n", str);
}
return 0;
}
```
在这段代码中,我们首先定义了一个字符串 `str`,并使用 `scanf` 语句从用户处获取输入。然后,我们使用 `strlen` 函数来获取字符串的长度,用 `len` 变量保存下来。
接着,我们使用一个循环来逐个比较字符串的第一个字符和最后一个字符、第二个字符和倒数第二个字符,以此类推,判断字符串是否为回文。如果在比较过程中发现有字符不相同,则将 `flag` 变量设置为 0 并跳出循环。
最后,我们根据 `flag` 变量的值输出判断结果即可。
希望能够帮到您!