C语言,输入一个十位数,分别输出每一位数字,怎么做?

我只知道手动十次%1000000000 %100000000,每一次少一个0就对了,但是这样太繁琐了,可以用循环做么?要怎么做?

//顺着打印,逆着打印都可以
int main()
{
int a = 1234567890, i;
int arr[10];
for (i = 9; i >= 0; i--)
{
printf("%d ",a%10);
arr[i] = a % 10;
a /= 10;
}
printf("\n");
for (i = 0; i < 10; i++)
{
printf("%d ",arr[i]);
}
getchar();
return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-09-21
楼上的没看题目,你写的是java啊,C语言可以这样写:
#include<stdio.h>
int main()
{
int num;
int b,c;
scanf("%d",&num);
b = (num%100)/10;
c = num%10;
printf("b = %d,c= %d\n",b,c);
return 0;
第2个回答  2015-09-21
public class Test {
  
    public static void main(String[] args) {
    String str = "12345678888";
    for(char c:str.toCharArray()){
    System.out.println(c);
    }
    }
}

第3个回答  2015-09-21
用sprintf把数字转字符串,然后分开取
第4个回答  2015-09-21
按照字符串读取数据