撰写人——软工二班——陈喜平
题目描述
给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123。
将下面的程序填写完整。
#include <stdio.h>
int main()
{
int x,a,b,c,d,e,y;
while(scanf("%d",&x)!=EOF)
{ ...............................
................................
}
return 0;
}
输入
包含多组数据,每组一个不大于5位的整数。
输出
每组输出三行。第一行 :位数;第二行:用空格分开的每个数字,注意最后一个数字后没有空格;第三行:按逆序输出这个数
样例输入
789
12345
样例输出
3
7 8 9
987
5
1 2 3 4 5
54321
提示
来源
hnldyhy
#include <stdio.h>
int main()
{
int x,a,b,c,d,e,f,y;
int a1,b1,c1,d1,f1;
int i;
while(scanf("%d",&x)!=EOF)
{
int j=0;
for(i=x;i!=0;j++)
{
i/=10;
}
printf("%d\n",j);
a=(x%10)*10000;
b=((x/10)%10)*1000;
c=((x/100)%10)*100;
d=((x/1000)%10)*10;
f=x/10000;
a1=(x%10);
b1=((x/10)%10);
c1=((x/100)%10);
d1=((x/1000)%10);
f1=x/10000;
y=a+b+c+d+f;
if(j==1)
{
printf("%d\n",y/10000);
printf("%d\n",y/10000);
}
if(j==2)
{ printf("%d %d\n",b1,a1);
printf("%d\n",y/1000);
}
if(j==3)
{ printf("%d %d %d\n",c1,b1,a1);
printf("%d\n",y/100);
}
if(j==4)
{ printf("%d %d %d %d\n",d1,c1,b1,a1);
printf("%d\n",y/10);
}
if(j==5)
{ printf("%d %d %d %d %d\n",f1,d1,c1,b1,a1);
printf("%d\n",y);
}
}
return 0;
}