题目:
本题要求编写程序,对输入的一个整数,从高位开始逐位分割并输出它的各位数字。
输入格式:
输入在一行中给出一个长整型范围内的非负整数。
输出格式:
从高位开始逐位输出该整数的各位数字,每个数字后面有一个空格。
输入样例:
123456
输出样例:
1 2 3 4 5 6
代码:
#include <stdio.h>
#define N 10000
int main(){
long n, temp;
long mask=1;
scanf("%ld", &n);
temp = n;
while(temp/10 != 0){
// 获取最高位权值
mask *= 10;
temp /= 10;
}
while(mask!=0){
// 按权逐位输出,权为0表示各位已经输出完毕
printf("%d ", n/mask);
n %= mask;
mask /= 10;
}
return 0;
}