大家来看看我这样做有什么问题(新手求教)
#include <stdio.h>int main()
{
int a,b,c,d,e,f;
printf("请输入一个正整数:");
scanf("%d",&a);
if(a/10000>=1&&a/1000000<1)
b=(int)(a/10000);
c=(int)((a%10000)/1000);
d=(int)(((a%10000)%1000)/100);
e=(int)((((a%10000)%1000)%100)/10);
f=(int)((((a%10000)%1000)%100)%10);
printf(" 该数是五位数\n");
printf("万位上的数字是:%d\n",b);
printf("千位上的数字是:%d\n",c);
printf("百位上的数字是:%d\n",d);
printf("十位上的数字是:%d\n",e);
printf("个位上的数字是:%d\n",f);
if(a/1000>=1&&a/10000<1)
c=(int)((a/1000));
d=(int)(((a%1000)/100));
e=(int)(((a%1000)%100)/10);
f=(int)(((a%1000)%100)%10);
printf(" 该数是四位数\n");
printf("千位上的数字是:%d\n",c);
printf("百位上的数字是:%d\n",d);
printf("十位上的数字是:%d\n",e);
printf("个位上的数字是:%d\n",f);
if(a/100>=1&&a/1000<1)
d=(int)(a/100);
e=(int)((a%100)/10);
f=(int)((a%100)%10);
printf(" 该数是三位数\n");
printf("百位上的数字是:%d\n",d);
printf("十位上的数字是:%d\n",e);
printf("个位上的数字是:%d\n",f);
if(a/10>=1&&a/100<1)
e=(int)(a/10);
f=(int)(a%10);
printf(" 该数是两位数\n");
printf("十位上的数字是:%d\n",e);
printf("个位上的数字是:%d\n",f);
if(a%10>=1&&a/10<1)
f=(int)(a%10);
printf("该数是一位数\n");
printf("个位上的数字是:%d\n",f);
return 0;
}
[此贴子已经被作者于2016-11-18 10:19编辑过]