“回文”是一种无论正读和反读都一样的字符串,例如:“121”、“abcba”、“ABCCBA”。编写程序,判断任一字符串是否为回文。(要求用函数实现) 输入示例: 12321 输出示例: yes
时间: 2025-01-17 22:06:31 浏览: 76
要编写一个C语言函数来判断一个字符串是否为回文,你可以使用两个指针,一个从前往后遍历,另一个从后往前遍历,比较对应位置的字符是否相等。如果所有字符匹配,则字符串是回文。
以下是一个C语言函数实现的例子:
```c
#include <stdbool.h>
#include <string.h>
// 函数声明
bool isPalindrome(char *str);
// 主函数演示如何调用
int main() {
char input[] = "12321";
if (isPalindrome(input)) {
printf("yes\n");
} else {
printf("no\n");
}
return 0;
}
// 判断回文的函数实现
bool isPalindrome(char *str) {
int start = 0; // 前指针
int end = strlen(str) - 1; // 后指针
while (start < end) { // 当前指针指向不超出范围
if (str[start] != str[end]) { // 如果当前字符不等于对应的反向字符
return false; // 不是回文,直接返回
}
start++; // 前指针向右移动
end--; // 后指针向左移动
}
return true; // 所有字符都匹配,说明是回文
}
```
在这个例子中,`isPalindrome` 函数接收一个字符串 `str` 作为参数,通过不断比较首尾字符直到两个指针相遇或交叉,判断字符串是否是回文。如果是回文,函数返回 `true`,否则返回 `false`。
阅读全文
相关推荐


















