c语言编写函数判断一个字符串是否为回文运用指针函数并判断输入字符串是否为回文不使用bool使用intn(()
时间: 2024-12-19 20:20:34 浏览: 54
在C语言中,我们可以编写一个函数来判断一个字符串是否是回文,不使用布尔值而是返回一个整数。如果字符串是回文,则返回非零值表示true,反之返回0表示false。以下是通过指针来实现的一个简单示例:
```c
#include <stdio.h>
#include <string.h>
int isPalindrome(char* str) {
// 指针初始化,初始位置指向第一个字符,结束位置指向最后一个字符的下一个位置
char* start = str;
char* end = str + strlen(str) - 1;
while (start < end) {
// 如果开始和结束位置的字符不相等,说明不是回文,返回0
if (*start != *end) {
return 0;
}
// 移动指针
start++;
end--;
}
// 所有字符都比较过且相等,是回文,返回非零值
return 1;
}
int main() {
char input[100];
printf("Enter a string: ");
fgets(input, sizeof(input), stdin);
// 删除换行符
input[strcspn(input, "\n")] = '\0';
int result = isPalindrome(input);
if (result == 1) {
printf("%s is a palindrome.\n", input);
} else {
printf("%s is not a palindrome.\n", input);
}
return 0;
}
阅读全文
相关推荐


















