c语言判断字符串是否为回文
时间: 2024-09-18 07:18:58 浏览: 49
在C语言中,判断一个字符串是否为回文可以采用双指针法,从字符串的两端向中间遍历,逐个比较字符是否相等。下面是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
// 判断字符串是否为回文
int isPalindrome(char str[]) {
int left = 0;
int right = strlen(str) - 1;
// 只要左指针小于右指针,继续比较
while (left < right) {
if (str[left] != str[right]) {
return 0; // 如果当前字符不匹配,则不是回文
}
left++;
right--;
}
return 1; // 所有字符都匹配,所以是回文
}
int main() {
char str[100];
printf("请输入一个字符串:");
fgets(str, sizeof(str), stdin); // 注意fgets防止输入超长
str[strlen(str)-1] = '\0'; // 去除换行符
if (isPalindrome(str)) {
printf("%s 是回文字符串。\n", str);
} else {
printf("%s 不是回文字符串。\n", str);
}
return 0;
}
```
阅读全文