一般是求余,数以十,循环输出是由低到高为;
所以我们先让它变为小数,乘以十,再求余;
如:
12345 变为0.12345 乘十1.2345 求余得1;
循环可得1 2 3 4 5;
#include<stdio.h>
void main()
{
long a,b;
int i,num = 0,d;
double c;
printf("请输入一个长整形:\n");
scanf("%ld", &a);
b = a;
while (1)
{
if (a > 0)
num++;
a = a /10;
if (a == 0)
break;
}
c = b;
for (i = 1; i <=num ; i++)
{
c = c / 10;
}
for (i = 1; i <= num; i++)
{
c *= 10;
d = (int)c % 10;
printf("%d ",d);
}
}