给我c语言判断回文数的函数
时间: 2023-03-14 10:59:58 浏览: 74
int isPalindrome(int x) {
int temp=x,y=0;
while(temp){
y=y*10+temp%10;
temp/=10;
}
return (x==y);
}
相关问题
C语言编写判断回文数的有参函数
下面是一个判断回文数的有参函数的C语言代码:
```c
#include <stdio.h>
#include <string.h>
int is_palindrome(int num) {
char str[20];
sprintf(str, "%d", num); // 将数字转化为字符串
int len = strlen(str);
for (int i = 0; i < len / 2; i++) {
if (str[i] != str[len - i - 1]) {
return 0; // 不是回文数
}
}
return 1; // 是回文数
}
int main() {
int num;
printf("请输入一个整数:");
scanf("%d", &num);
if (is_palindrome(num)) {
printf("%d是回文数", num);
} else {
printf("%d不是回文数", num);
}
return 0;
}
```
这个函数将输入的整数转化为字符串,然后从两端往中间扫描判断是否对称,如果对称则是回文数,否则不是回文数。
回文数判断函数c语言
以下是两种C语言判断回文数的方法:
方法一:将整数反转后与原数比较
```c
#include <stdio.h>
int main() {
int n, x, y;
int r = 0;
printf("输入一个整数: ");
scanf("%d", &n);
y = n;
while (n != 0) {
x = n % 10;
r = r * 10 + x;
n = n / 10;
}
if (y == r)
printf("%d 是回文数。", y);
else
printf("%d 不是回文数。", y);
return 0;
}
```
方法二:将整数转换为字符串后判断
```c
#include <stdio.h>
#include <string.h>
int main() {
int a = 12021;
char s[10] = {'\0'}, s1[10] = {'\0'};
sprintf(s, "%d", a);
int n = strlen(s);
int j = 0;
for (int i = n - 1; i >= 0; i--) {
s1[j++] = s[i];
}
if (!strcmp(s, s1))
printf("整数%d是回文串", a);
else
printf("整数%d不是回文串", a);
return 0;
}
```