用c语言编写一个程序可以判断一个数是否为回文数
时间: 2024-01-17 14:05:31 浏览: 21
#include <stdio.h>
int main() {
int num, reverse_num = 0, original_num;
printf("请输入一个数:");
scanf("%d", &num);
original_num = num;
// 反转数字
while (num != 0) {
reverse_num = reverse_num * 10 + num % 10;
num /= 10;
}
if (original_num == reverse_num) {
printf("%d 是回文数", original_num);
} else {
printf("%d 不是回文数", original_num);
}
return 0;
}
相关问题
C语言编写一个程序,判断一个数是否是回文数
好的,我能够回答这个问题。以下是一个C语言编写的程序,用于判断一个数字是否是回文数:
```
#include <stdio.h>
#include <stdbool.h>
bool isPalindrome(int num)
{
int reversed = 0, original = num;
while (num > 0) {
reversed = reversed * 10 + num % 10;
num /= 10;
}
return original == reversed;
}
int main()
{
int num;
printf("Please input an integer: ");
scanf("%d", &num);
if (isPalindrome(num)) {
printf("%d is a palindrome number.\n", num);
} else {
printf("%d is not a palindrome number.\n", num);
}
return 0;
}
```
程序先定义了一个 `isPalindrome` 函数,该函数接收一个整数作为参数,并返回一个布尔值,表示该整数是否是回文数。在函数内部,数字被反转并与原始数值进行比较。
主程序首先要求用户输入一个整数,并使用 `scanf` 函数读取输入值。然后调用 `isPalindrome` 函数,如果返回 true,则打印出该数字是回文数。否则,打印出该数字不是回文数。
C语言中 编写一个程序 判断某一字符串 是否是回文数
以下是一个判断字符串是否是回文数的 C 语言程序:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int i, j, len, flag = 1;
printf("请输入一个字符串:");
scanf("%s", str);
len = strlen(str);
// 判断字符串是否为回文数
for (i = 0, j = len - 1; i < j; i++, j--)
{
if (str[i] != str[j])
{
flag = 0;
break;
}
}
if (flag)
printf("%s 是回文数\n", str);
else
printf("%s 不是回文数\n", str);
return 0;
}
```
该程序先读取用户输入的字符串,然后利用两个指针 `i` 和 `j` 分别指向字符串的首尾字符。接着进行循环判断,如果首尾字符不同,则将标志变量 `flag` 设为 0,跳出循环。最后根据标志变量 `flag` 的值输出判断结果。