解题思路:
注意事项:
循环之后a的值改变了,用b作为中间值代替。一个新手的笨办法。。。
参考代码:
#include<stdio.h>
int main()
{
int a,b,i;
i=0;
scanf("%d",&a);
b=a;
while(a>0){
a=a/10;
i++;
}
printf("%d\n",i);
switch(i)
{
case 1:printf("%d\n",b);break;
case 2:printf("%d %d\n",b/10,b%10);break;
case 3:printf("%d %d %d\n",b/100,b%100/10,b%10);break;
case 4:printf("%d %d %d %d\n",b/1000,b%1000/100,b%100/10,b%10);break;
case 5:printf("%d %d %d %d %d\n",b/10000,b%10000/1000,b%1000/100,b%100/10,b%10);break;
}
switch(i)
{
case 1:printf("%d\n",b);break;
case 2:printf("%d%d\n",b%10,b/10);break;
case 3:printf("%d%d%d\n",b%10,b%100/10,b/100);break;
case 4:printf("%d%d%d%d\n",b%10,b%100/10,b%1000/100,b/1000);break;
case 5:printf("%d%d%d%d%d\n",b%10,b%100/10,b%1000/100,b%10000/1000,b/10000);break;
}
return 0;
}
0.0分
0 人评分