如何用C语言实现一个字符串的回文检测函数?
时间: 2025-01-23 15:12:35 浏览: 51
在C语言中,可以通过多种方式实现一个字符串的回文检测函数。以下是一个简单的实现方法:
```c
#include <stdio.h>
#include <string.h>
// 函数声明
int isPalindrome(char str[]);
int main() {
char str[100];
printf("请输入一个字符串: ");
scanf("%s", str);
if (isPalindrome(str)) {
printf("字符串是回文。\n");
} else {
printf("字符串不是回文。\n");
}
return 0;
}
// 回文检测函数实现
int isPalindrome(char str[]) {
int len = strlen(str);
int i;
for (i = 0; i < len / 2; i++) {
if (str[i] != str[len - i - 1]) {
return 0; // 不是回文
}
}
return 1; // 是回文
}
```
这个程序的工作原理如下:
1. `isPalindrome` 函数接收一个字符串作为参数。
2. 使用 `strlen` 函数获取字符串的长度。
3. 通过一个循环,比较字符串的第一个字符和最后一个字符,第二个字符和倒数第二个字符,依此类推。
4. 如果在任何一次比较中发现字符不相同,函数返回0,表示字符串不是回文。
5. 如果所有比较都通过,函数返回1,表示字符串是回文。
6. 在 `main` 函数中,用户输入一个字符串,然后调用 `isPalindrome` 函数进行检测,并根据返回值输出结果。
阅读全文
相关推荐


















