回文数是指一个数字正向和逆向读取的结果相同,如54345。编写一个函数,判断一个5位数是否回文数。

来源:百度知道 编辑:UC知道 时间:2024/05/08 09:08:09
本人现在做课程设计,用C++完成下列课程设计, 希望大家能尽快帮助我,谢谢了!!
(回文数是指一个数字正向和逆向读取的结果相同,如54345,18981等。编写一个函数,判断一个5位数是否回文数。主函数中输入一个5位整数,调用函数判断是否回文数,输出结果。)

#include <stdio.h>

int main()
{

long int n;
scanf("%ld",&n);
if(n>=100000)
{
printf("位数超过5位");
return 0;
}

int b1=n/10000;
int b2=(n%10000)/1000;
int b4=(n%100)/10;
int b5=n%10;

if(b1==b5&&b2==b4)
printf("是回文数");
else
printf("不是回文数");

return 0;
}

用long int是为了在TC下可兼容编译。

#include <stdio.h>
bool work(int n){
int a = n/10000;
int b = n%10000/1000;
int c = n%100/10;
int d = n%10;
if(a==d && b==c) return true;
else return false;
}
int main()
{
int n;scanf("%d",&n);
if(work(n)) printf("是回文数");
else printf("不是回文数");
return 0;
}

使用C++写的,只要求出54345或者18981颠倒过来的数,把它赋值给temp,并且将它和n比较一下就知道是不是回文了。
bool isHuiwen(int n)
{
int temp=0;
int n1=n;
while(n1