-->
当前位置:首页 > 题库 > 正文内容

程序填空题:从低位到高位打印整数的每位数字

Luz4年前 (2021-11-13)题库1869
小萌新们,还记得如何得到整数的每一位数字么。咱们是借助整除和取余操作完成的。下面咱们看一道和整数数位分离有关的一道题目,题目描述是这样的:

从低位到高位打印一个整数的每一位数字。
### 输入格式:

输入为一个不超过10^ 9的整数。
### 输出格式:

从低位到高位输出该整数的每一位数字,每个数字后面带一个空格。

### 输入样例:


123


### 输出样例:


3 2 1

我们已经知道,整数对10取余得到个位数字,整数对10整除则得到去掉个位数后的剩余数位组成的整数。例如: 123%10=3, 123/10=12。我们继续这个操作:12%10=2, 12/10=1。再继续这个操作:1%10=1, 1/10=0。此时,我们已经按照数字3、2、1的顺序得到了123的每一位数字。

总结上面这个操作过程,实际上我们是做了一个重复进行对10取余、整除的操作,直到得到的整除结果为0。好了,下面咱们可以尝试写出完整的算法步骤了,例如:

c++
第1步:输入整数n;
第2步:判断n是否为0,如果成立,则程序结束,否则执行下面操作:
输出n%10的结果;
n更新为n/10的结果;
重复第2步直到n为0。

用C语言如何实现呢,如果你想清楚了,快去完成下面的程序填空吧。

#include <stdio.h>
int main()
{
int n;
scanf("%d", &n);
while ()//n不等于0时执行循环
{
;//打印n的个位数,后面跟一个空格
;//更新n为剩余位数组成的整数
}
return 0;
}








答案:
第1空:n != 0

第2空:printf("%d ", n % 10)

第3空:n /= 10

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。