题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
思路:回文数逆置过来与原来相等。判断一个数是不是回文数,只需要将它逆置,然后判断是否与原来相等即可。
代码:
#include <stdio.h>
int main()
{
int num;
printf("请输入一个整数:");
scanf("%d",&num);
int Num=num; //存储num
int bit; //存储每一位数
int ret=0;
while(num){
bit=num%10;
ret=ret*10+bit; //逐次逆置
num/=10;
}
printf("逆置数是%d\n",ret);
if(Num==ret){
printf("这是回文数\n");
}else{
printf("这不是回文数\n");
}
}
运行:
请输入一个整数:12321
逆置数是12321
这是回文数
--------------------------------
Process exited after 2.504 seconds with return value 0
请按任意键继续. . .
请输入一个整数:123456789
逆置数是987654321
这不是回文数
--------------------------------
Process exited after 5.066 seconds with return value 0
请按任意键继续. . .