c语言用函数判断是否是回文数
时间: 2024-10-25 20:15:49 浏览: 9
C语言判断是否为回文数及其简介
在C语言中,判断一个数是否是回文数通常指的是该数从前往后读和从后往前读是一样的,比如121、1221就是回文数。以下是利用函数来判断一个整数是否是回文的一个简单示例:
```c
#include <stdio.h>
#include <stdbool.h>
bool isPalindrome(int num) {
// 将输入的整数转换为字符串便于比较
char str[100];
int len;
// 对于负数或非整数直接返回false
if (num < 0) {
return false;
}
len = snprintf(str, sizeof(str), "%d", num);
str[len] = '\0'; // 添加终止符
// 比较字符串前半部分和后半部分是否相等
for (int i = 0, j = strlen(str) - 1; i < j; i++, j--) {
if (str[i] != str[j]) {
return false;
}
}
return true;
}
int main() {
int input;
printf("Enter a number to check if it's a palindrome: ");
scanf("%d", &input);
if (isPalindrome(input)) {
printf("%d is a palindrome.\n", input);
} else {
printf("%d is not a palindrome.\n", input);
}
return 0;
}
```
在这个例子中,`isPalindrome`函数接收一个整数作为参数,把它转换为字符串,然后逐个字符比较首尾是否相同,如果有不同的字符则返回`false`,如果全部匹配则返回`true`。
阅读全文