c语言递归判断回文字符串
时间: 2025-01-05 21:23:52 浏览: 120
在C语言中,递归是一种函数调用自身的技术,可以用于判断一个字符串是否为回文。回文是指正读反读都一样的词句。以下是递归方式判断回文字符串的一个简单示例:
```c
#include <stdio.h>
#include <string.h>
// 递归函数,判断字符串是否回文
int isPalindrome(char str[], int start, int end) {
// 基线条件:当start等于end时,说明已经比较完,字符串是回文
if (start >= end)
return 1;
// 比较当前字符,如果不同则返回0,表示不是回文
if (str[start] != str[end])
return 0;
// 如果相同,继续检查剩余部分
return isPalindrome(str, start + 1, end - 1);
}
int main() {
char str[100];
printf("请输入一个字符串: ");
fgets(str, sizeof(str), stdin); // 防止fgets读取换行符
// 移除字符串结束的换行符
str[strlen(str) - 1] = '\0';
// 判断并打印结果
if (isPalindrome(str, 0, strlen(str) - 1))
printf("%s 是回文\n", str);
else
printf("%s 不是回文\n", str);
return 0;
}
```
阅读全文
相关推荐
















