C语言-输入一个不多于5位的正整数

时间:2022-08-26 19:32:15 阅读: 最新文章 文档下载
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

5.7 输入一个不多于5位的正整数,要求:

1 求它是几位数;

2 分别求出每一位数字;

3 按逆序输出各位数字.

#include<stdio.h>

int main()

{

int a,b,wan,qian,bai,shi,ge,c;

printf("请输入一个不多于五位的正整数:");

scanf("%d",&a);

if(a>9999)

{

b=5;

wan=a/10000;

qian=a%10000/1000;

bai=a%10000%1000/100;

shi=a%10000%1000%100/10;

ge=a%10000%1000%100%10;

c=ge*10000+shi*1000+bai*100+qian*10+wan;

printf("这个数的位数为:%d\n",b);

printf("每位数字为:");

printf("%d,%d,%d,%d,%d\n",wan,qian,bai,shi,ge);

printf("反序数字为:");

printf("%.5d",c);

}

else if(a>999)

{

b=4;

qian=a/1000;

bai=a%1000/100;

shi=a%1000%100/10;

ge=a%1000%100%10;

c=ge*1000+shi*100+bai*10+qian;

printf("这个数的位数为:%d\n",b);

printf("每位数字为:");

printf("%d,%d,%d,%d\n",qian,bai,shi,ge);

printf("反序数字为:");

printf("%.4d",c);

}

else if(a>99)

{

b=3;

bai=a/100;

shi=a%100/10;

ge=a%100%10;

c=ge*100+shi*10+bai;

printf("这个数的位数为:%d\n",b);

printf("每位数字为:");

printf("%d,%d,%d\n",bai,shi,ge);

printf("反序数字为:");

printf("%.3d",c);

}

else if(a>9)

{

b=2;

shi=a/10;

ge=a%10;

c=ge*10+shi;

printf("这个数的位数为:%d\n",b);

printf("每位数字为:");

printf("%d,%d\n",shi,ge);

printf("反序数字为:");

printf("%.2d",c);

}

else

{

b=1;

ge=a%10;

c=ge;

printf("这个数的位数为:%d\n",b);

printf("每位数字为:");

printf("%d\n",ge);

printf("反序数字为:");

printf("%.1d",c);

}

}

本文来源:https://www.wddqw.com/doc/2ec7dfa1d1f34693daef3e31.html