题目:输入一个非负整数,正序输出它的每一位数字
#include <stdio.h>
int main(int argc, char **argv) {
// 13425 / 10000 ->1
// 13425 % 10000 ->3425
// 10000 / 10 ->1000
// 3425 / 1000 ->3
// 3425 % 1000 ->425
// 1000 / 10 ->100
// 425 / 100 ->4
// 425 % 100 ->25
// 100 / 10 ->10
// 25 / 10 ->2
// 25 % 10 ->5
// 10 / 10 ->1
// 5 / 1 ->5
// 5 % 1 ->5
// 1 / 10 ->0
int x;
scanf("%d", &x);
int mask = 1;
int t = x;
while(t>9){
t /= 10;
mask *= 10;
}
do{
int d = x/mask;
printf("%d", d);
if(mask > 9){
printf(" ");
}
x %= mask;
mask /= 10;
}while(mask > 0);
printf("\n");
return 0;
}
记录。来自中国大学mooc的课程。