习题!练习.
给一个不多于5位正整数,要求;
1;求出它是几位数;
2;分别输出每位数字;
3;按"疫"序输出各位数字,例如原数为321,应输出123.
"疫"这是同音字,文化低,大家将就下
我在第一题就死了.求帮助
int a,b;
scanf("%d",&a);
if(a<10)
{
if(a<100)
{
if(a<1000)
{
if(a<10000)
{
if(a<100000)
b=1;
else
b=0;
}
else
b=0;
}
else
b=0;
}
else
b=0;
}
else
b=0;
if(b)
printf("%d 个位\n",a);
else
printf("%d 十位\n",a);
printf("%d 百位\n",a);
printf("%d 千位\n",a);
printf("%d 万位\n",a);
[解决办法]
给你个例子,仅供参考
- C/C++ code
#include <stdio.h>void main(){ int n, nIndex = 0, a[6], i; scanf("%d", &n); //求出各位数字,并存在数组中 while (n >0) { a[nIndex++] = n%10; n = n/10; } //原序输出 printf("%d\n", nIndex); for(i=nIndex-1; i>=0; --i) printf("%d ",a[i]); printf("\n"); //逆序输出 for(i=0; i<nIndex; ++i) printf("%d ",a[i]); printf("\n");}