用C语言编写函数,判断一个字符串是否为回文,如是返回1,否则返回-1.
时间: 2023-12-13 16:50:07 浏览: 361
以下是用C语言编写的函数,用于判断一个字符串是否为回文:
```c
#include <stdio.h>
#include <string.h>
int isPalindrome(char str[]) {
int i, j;
int len = strlen(str);
for (i = 0, j = len - 1; i <= j; i++, j--) {
if (str[i] != str[j]) {
return -1;
}
}
return 1;
}
int main() {
char str[100];
printf("Enter a string: ");
scanf("%s", str);
if (isPalindrome(str) == 1) {
printf("%s is a palindrome.\n", str);
}
else {
printf("%s is not a palindrome.\n", str);
}
return 0;
}
```
在这个函数中,我们首先使用`strlen()`函数获取字符串的长度。然后使用两个指针`i`和`j`来遍历字符串,`i`从头开始遍历,`j`从尾开始遍历,每次迭代都会比较字符`str[i]`和`str[j]`,如果它们不相等,则返回-1,表示该字符串不是回文。最后,如果成功遍历了整个字符串,就返回1,表示该字符串是回文。
阅读全文