用c语言设计函数判断一个字符串是不是回文字符串
时间: 2024-10-14 15:14:18 浏览: 42
C 语言编写用于判断一个字符串是否是回文字符串.pdf
在C语言中,可以设计一个函数来检查一个字符串是否是回文,即正读反读都一样。下面是一个简单的示例,函数名为`isPalindrome`:
```c
#include <stdio.h>
#include <string.h>
// 函数声明
int isPalindrome(const char *str);
int main() {
char str[100];
printf("请输入一个字符串:");
fgets(str, sizeof(str), stdin); // 防止换行符
str[strcspn(str, "\n")] = '\0'; // 去除fgets获取的换行符
if (isPalindrome(str)) {
printf("%s 是回文字符串。\n", str);
} else {
printf("%s 不是回文字符串。\n", str);
}
return 0;
}
// 判断字符串是否为回文的函数实现
int isPalindrome(const char *str) {
int len = strlen(str);
for (int i = 0; i < len / 2; i++) { // 只需遍历一半长度,因为两端字符会相对应
if (str[i] != str[len - i - 1]) {
return 0; // 如果有不相等的字符,则不是回文
}
}
return 1; // 所有字符都匹配,说明是回文
}
```
这个函数通过逐个比较字符串首尾字符直到中间位置,如果发现有不相等的字符则返回0,否则返回1。注意,为了处理包含空格或特殊字符的输入,这里只比较字母字符。
阅读全文