这是一个愚蠢的办法QAQ
/*给一个不多于5位的正整数,要求:
(1)求出它是几位数
(2)分别输出每一位数字;
(3)按逆序输出各位数字,例如原数为321,应输出123.*/
#include<stdio.h>
int main()
{
int x,t;
int a,b,c,d,e;
scanf("%d",&x);
if(1<=x&&x<=9) t=1;
else if(10<=x&&x<=99) t=2;
else if(100<=x&&x<=999) t=3;
else if(1000<=x&&x<=9999) t=4;
else if(10000<=x&&x<=99999) t=5;
printf("x为%d位数",t);
printf("每位数字为:");
e=x/10000;
d=(x-e*10000)/1000;
c=(x-e*10000-d*1000)/100;
b=(x-e*10000-d*1000-c*100)/10;
a=x-e*10000-d*1000-c*100-b*10;
switch(t)
{
case 5:
{
printf("%d,%d,%d,%d,%d\n",e,d,c,b,a);
printf("反序数字为:");
printf("%d%d%d%dl%d\n",a,b,c,d,e);
}break;
case 4:
{
printf("%d,%d,%d,%d\n",d,c,b,a);
printf("反序数字为:");
printf("%d%d%d%d\n",a,b,c,d);
}break;
case 3:
{
printf("%d,%d,%d\n",c,b,a);
printf("反序数字为:");
printf("%d%d%d\n",a,b,c);
}break;
case 2:
{
printf("%d,%d\n",b,a);
printf("反序数字为:");
printf("%d%d\n",a,b);
}break;
case 1:
{
printf("%d\n",e);
printf("反序数字为:");
printf("%d\n",a);
}break;
}
return 0;
}