(1)输入一个不多于5位的正整数,求1.它是几位数,2.并分别输出每一位数字(以空格分割)C语言
时间: 2024-03-23 22:41:40 浏览: 65
python 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字 (示例)
5星 · 资源好评率100%
好的,这里是C语言的代码实现:
```c
#include <stdio.h>
int main() {
int n, count = 0, num[5];
scanf("%d", &n);
while (n) {
num[count] = n % 10;
n /= 10;
count++;
}
printf("%d\n", count);
for (int i = count - 1; i >= 0; i--) {
printf("%d ", num[i]);
}
return 0;
}
```
解释一下代码的思路:
首先定义了一个整数n和一个计数器count,用于保存输入的数字和计算数字的位数。同时定义了一个长度为5的数组num,用于保存每一位数字。
通过scanf函数读入一个整数n,然后利用while循环和%运算符求出n的每一位数字,并将其保存在数组num中,同时计数器count加1。
最后输出count的值,表示n的位数,再利用for循环倒序输出数组num中的每一位数字,用空格分隔。
注意:代码中假设输入的数字不多于5位,如果需要处理更大的数字,需要修改数组num的长度。
阅读全文