编写fun函数实现判断字符串是否是回文。,用c语言
时间: 2024-05-07 16:20:03 浏览: 15
以下是一个简单的C语言函数,用于判断给定字符串是否为回文:
```c
#include <string.h>
int isPalindrome(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; // 是回文
}
```
该函数首先计算字符串的长度,然后从字符串的两端向中间遍历,并比较对应的字符是否相等。如果存在不同的字符,则该字符串不是回文。如果所有字符都对称,则该字符串是回文。函数返回1表示是回文,返回0表示不是回文。
相关问题
编写函数fun 判断字符串是否回文
以下是判断字符串是否回文的Python代码:
```python
def fun(s):
return s == s[::-1]
```
函数接收一个字符串参数s,使用切片操作将其反转后与原字符串比较,如果相同则返回True,否则返回False。
例如:
```python
print(fun('racecar')) # True
print(fun('hello')) # False
```
用c语言:编写函数,判断一个字符串是否是回文。
可以使用双指针法,一个指针指向字符串头部,一个指针指向字符串尾部,逐一比较字符是否相同。
以下是实现代码:
```c
#include <stdio.h>
#include <string.h>
int isPalindrome(char *str) {
int len = strlen(str);
int left = 0, right = len - 1;
while (left < right) {
if (str[left] != str[right]) {
return 0;
}
left++;
right--;
}
return 1;
}
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
if (isPalindrome(str)) {
printf("%s 是回文字符串\n", str);
} else {
printf("%s 不是回文字符串\n", str);
}
return 0;
}
```
输入一个字符串后,调用 `isPalindrome()` 函数判断是否是回文字符串,返回 1 表示是回文字符串,返回 0 表示不是回文字符串。