c语言一个数分解成独立的数字
任意输入一个数,将其分解为各个位上的数,并显示出来。例如输入3564,输出3,5,6,4。有没有一个通用的办法啊?输入的数不知道其位数,可能是1,2,3,4,5,6,7,...
任意输入一个数,将其分解为各个位上的数,并显示出来。
例如输入3564,输出3,5,6,4。
有没有一个通用的办法啊?
输入的数不知道其位数,可能是1,2,3,4,5,6,7,8...... 展开
例如输入3564,输出3,5,6,4。
有没有一个通用的办法啊?
输入的数不知道其位数,可能是1,2,3,4,5,6,7,8...... 展开
3个回答
推荐于2016-12-01 · 知道合伙人数码行家
关注
展开全部
void divide(int a)
{
int t,d, i;
t = 0;
i = 0;
//先将a反序,储存在t中,比如a=1234,那么t=4321
do
{
d = a%10;
a /= 10;
t = t*10+d;
i++;
}while(a);
//从个位依次输出t,即等价于最高位依次输出a
do
{
printf("%d,",t%10);
t /= 10;
}while(i--);
printf("\n");
}
使用i计数是为了保证类如1000这样后面为0的数字在输出的时候不会只输出前面的非零数。
main()程序的输入你自己写,用scanf将数字输入到变量a中,然后调用divide(a)即得到你要的结果。
{
int t,d, i;
t = 0;
i = 0;
//先将a反序,储存在t中,比如a=1234,那么t=4321
do
{
d = a%10;
a /= 10;
t = t*10+d;
i++;
}while(a);
//从个位依次输出t,即等价于最高位依次输出a
do
{
printf("%d,",t%10);
t /= 10;
}while(i--);
printf("\n");
}
使用i计数是为了保证类如1000这样后面为0的数字在输出的时候不会只输出前面的非零数。
main()程序的输入你自己写,用scanf将数字输入到变量a中,然后调用divide(a)即得到你要的结果。
展开全部
t=3565;
a=t/1000;
b=(t-a*1000)/100;
c=(t-a*1000-b*100)/10;
d=t-a*1000-b*100-c*10;
a=t/1000;
b=(t-a*1000)/100;
c=(t-a*1000-b*100)/10;
d=t-a*1000-b*100-c*10;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int i = 12345;
int a1,a2,a3,a4,a5;
a1 = i / 10000;
a2 = i % 10000/1000;
a3 = i % 1000 /100;
a4 = i % 100 / 10;
a5 = i % 10
int a1,a2,a3,a4,a5;
a1 = i / 10000;
a2 = i % 10000/1000;
a3 = i % 1000 /100;
a4 = i % 100 / 10;
a5 = i % 10
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询