题目描述
输入一个不大于10的9次方的正整数,从高位开始逐位分割并输出各位数字。
输入
输入一个正整数n,n是int型数据
输出
依次输出各位上的数字,每一个数字后面有一个空格,输出占一行。例如,输入 12345 ,输出 1 2 3 4 5
样例输入
12345
样例输出
1 2 3 4 5
提示
注意整数运算避免使用double类型的函数如pow()。 本题可先用一个循环计算出最高位的位权h,然后再用一个循环,循环内容为:输出最高位(n/h)、扔掉最高位(n = n%h)、降低最高位位权(h = h/10),直到位权h为0。
这是刚接触C语言的时候,无聊写了四种方法~
下面贴出来给大家参考,解释在代码里标注,就不单独写了~
前两种的思想有一点神奇,后两种是基本思路~
1:将数字当做字符处理
#include <stdio.h>
int main(){
char n; //将数字当做字符来对待骗一骗电脑,输入一个就输出一个。
while(1){
scanf("%c",&n);
if(n