请大家帮帮忙!!C程序!!
悬赏分:10 -
解决时间:2007-8-18 07:01给出一个不多于5位的正整数,要求
1 求出它是几位数
2 分别输出每一位数字
3 按逆序输出各位数字,例如原数为321,输出123
#include <stdio.h>
void main()
{
int n, a, b, c, d, e;
printf("请输入一个不超过五位的正整数:\n");
scanf("%d", &n);
if (n>99999)
{
printf("正整数超过5位,程序停止运行!\n");
return;
}
if (n>10000)
{
a = n/10000;
b = (n - a*10000)/1000;
c = (n - a*10000 - b*1000)/100;
d = (n - a*10000 - b*1000 - c*100)/10;
e = n - a*10000 - b*1000 - c*100 - d*10;
printf("%d %d %d %d %d\n", a, b, c, d, e);
return;
}
if (n>1000)
{
b = n/1000;
c = (n - b*1000)/100;
d = (n - b*1000 - c*100)/10;
e = n - b*1000 - c*100 - d*10;
printf("%d %d %d %d\n", b, c, d, e);
return;
}
if (n>100)
{
c = n/100;
d = (n - c*100)/10;
e = n - c*100 - d*10;
printf("%d %d %d\n", c, d, e);
return;
}
if (n>10)
{
d = n/10;
e = n - d*10;
printf("%d %d\n", d, e);
}
else
printf("%d\n", n);
}
程序经过编译、运行,完全正确。