给一个不多于5位的正整数,要求:
1.求出它是几位数;
2.分别输出每一位数字;
3.按逆序输出各位数字,例如原数321,应输出123.
#include <stdio.h>
int main(){
int a,b,c,d,e;
printf("请输入一个不多于五位的正整数:");
scanf("%d",&a);
if(a>=0&&a<10000){
if(a/10>1){
if(a/100>1){
if(a/1000>1){
if(a/10000<1){
b=a/1000;
c=(a-b*1000)/100;
d=(a-b*1000-c*100)/10;
e=a-b*1000-c*100-d*10;
printf("%d为四位数\n",a);
printf("每位数字:千位:%d 百位:%d 十位:%d 个位:%d\n",b,c,d,e);
printf("逆序输出:%d%d%d%d\n",e,d,c,b);
}
}
else{
b=a/100;
c=(a-b*100)/10;
d=a-b*100-c*10;
printf("%d为三位数\n",a);
printf("每位数字:百位:%d 十位:%d 个位:%d\n",b,c,d);
printf("逆序输出:%d%d%d\n",d,c,b);
}
}
else{
b=a/10;
printf("%d为两位数\n",a);
printf("每位数字:十位:%d 个位:%d\n",b,a-b*10);
printf("逆序输出:%d%d\n",a-b*10,b);
}
}
else{
printf("%d为一位数\n",a);
printf("分别输出每一位:个位:%d\n",a);
printf("逆序输出:%d\n",a);
}
}
else{
printf("输入错误!\n");
}
}