编写程序,判断输入的字符串是否为回文。C语言算法
时间: 2024-10-25 22:03:30 浏览: 23
C语言判断回文字符串代码.rar
5星 · 资源好评率100%
在C语言中,判断一个字符串是否为回文可以采用双指针法,从字符串两端向中间遍历,逐个比较字符是否相等。以下是简单的步骤和示例代码:
1. 定义两个指针,一个指向字符串的开头(`start`),另一个指向结尾(`end`)。
2. 当`start`小于`end`时,继续循环:
- 检查当前指针所指的字符是否等于相反位置的字符(即`str[start]`与`str[end]`)。
- 如果相等,移动`start`向前一位;如果不同,则说明不是回文,返回`false`。
- 移动`end`向后一位。
3. 当`start`大于等于`end`时,字符串是回文,返回`true`。
下面是一个简单的C语言函数实现:
```c
#include <stdbool.h>
#include <string.h>
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("madam")`会返回`true`,而`isPalindrome("hello")`则返回`false`。
阅读全文