大佬们,求请教这道c语言题目怎么写?
我的思路是这样的,但不知道哪里出问题了。求大佬给个指点(小白目前只学到循环语句,后面函数数组什么的都还没接触过)...
我的思路是这样的,但不知道哪里出问题了。求大佬给个指点(小白目前只学到循环语句,后面函数数组什么的都还没接触过)
展开
展开全部
#include<stdio.h>
void main() { int x,n,i,k,m;
scanf("%d",&n); printf("\n");
for ( i=0;i<n;i++ ) {
scanf("%d",&x); k=1; while ( x/k!=0 ) k*=10; if ( k>1 ) k/=10;
do { m=x/k; printf("%d ",m); x-=m*k; k/=10; } while ( x!=0 ); printf("\n\n");
}
}
思路是假定输入12453,则首先用1去除这个数,发现结果不等于0,于是再用10去除,用100去除,每次除数乘以10,直到结果等于0,这时会得到100000,这个数除以10得到10000,正好是12453的位数相同
输出时,12453/10000=1,输出,然后12453-1*10000=2453,然后将除数除以10, 于是输出2453/1000=2, ..., 直到x被减到0
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询