用c语言判断回文字符串
时间: 2023-12-02 11:03:16 浏览: 97
判断回文字符串可以通过两个指针从字符串的两端同时向中间扫描来实现。具体实现如下:
```c
#include <stdio.h>
#include <string.h>
int isPalindrome(char *str) {
int len = strlen(str);
char *left = str;
char *right = str + len - 1;
while (left < right) {
if (*left != *right) {
return 0; // 不是回文串
}
left++;
right--;
}
return 1; // 是回文串
}
int main() {
char str[100];
printf("请输入字符串:");
scanf("%s", str);
if (isPalindrome(str)) {
printf("%s 是回文串\n", str);
} else {
printf("%s 不是回文串\n", str);
}
return 0;
}
```
这里的 isPalindrome 函数用于判断一个字符串是否为回文串,其原理是使用两个指针 left 和 right 分别指向字符串的首尾,然后每次比较 left 和 right 指向的字符是否相等,如果不相等则不是回文串,直接返回 0;如果一直比较到 left >= right 时仍然相等,则说明是回文串,返回 1。
阅读全文