新手
1008: C语言程序设计教程(第三版)课后习题5.7
给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
Input:
一个不大于5位的数字
Output:
三行 第一行 位数 第二行 用空格分开的每个数字,注意最后一个数字后没有空格 第三行 按逆序输出这个数
Sample Input
12345
Sample Output
5
1 2 3 4 5
54321
```cpp
#include<stdio.h>
int main(){
int num,a,b,c,d,e;
scanf("%d",&num);
if(num>99999)
return 0;
if(num>=0&&num<=9){
printf("1\n");
printf("%d\n",num);
printf("%d\n",num);
}
if(num>9&&num<=99){
printf("2\n");
a = num/10;
b = num%10;
printf("%d %d\n",a,b);
printf("%d%d\n",b,a);
}
if(num>99&&num<=999){
printf("3\n");
a = num/100;
b = (num%100)/10;
c = num%10;
printf("%d %d %d\n",a,b,c);
printf("%d%d%d\n",c,b,a);
}
if(num>999&&num<=9999){
printf("4\n");
a = num/1000;
b = (num%1000)/100;
c = (num%100)/10;
d = num%10;
printf("%d %d %d %d\n",a,b,c,d);
printf("%d%d%d%d\n",d,c,b,a);
}
else if(num>9999&&num<=99999){
printf("5\n");
a = num/10000;
b = (num%10000)/1000;
c = (num%1000)/100;
d = (num%100)/10;
e = num%10;
printf("%d %d %d %d %d\n",a,b,c,d,e);
printf("%d%d%d%d%d\n",e,d,c,b,a);
}
return 0;
}