输入一个不多于5位数的正整数,依次输出每一位数字(从低位到高位依次输出)。
时间: 2023-05-30 18:04:31 浏览: 136
算法1:
1. 将输入的数转换为字符串
2. 从字符串末尾开始遍历,依次输出每一位数字
时间复杂度:O(n)
Python代码1:
```python
num = input("请输入一个不多于5位数的正整数:")
for i in range(len(num)):
print(num[len(num)-i-1])
```
算法2:
1. 用除10取余法,将输入的数从低位到高位依次取出每一位数字
2. 将每一位数字存入一个列表中
3. 反转列表,依次输出每一位数字
时间复杂度:O(n)
Python代码2:
```python
num = int(input("请输入一个不多于5位数的正整数:"))
digits = []
while num > 0:
digits.append(num % 10)
num //= 10
digits.reverse()
for digit in digits:
print(digit)
```
相关问题
用c语言写一个程序,要求输入一个不多于5位数的正整数,依次输出每一位数字(从低位到高位依次输出)。
```c
#include <stdio.h>
int main() {
int num, digit;
printf("请输入一个不多于5位数的正整数:");
scanf("%d", &num);
// 依次输出每一位数字
printf("各位数字依次为:");
for (int i = 1; i <= 5; i++) {
digit = num % 10; // 取出个位数字
printf("%d ", digit);
num /= 10; // 去掉个位数字
if (num == 0) { // 如果已经没有数字了,就退出循环
break;
}
}
return 0;
}
```
用c语言的多if语句写一个程序,要求输入一个不多于5位数的正整数,依次输出每一位数字(从低位到高位依次输出)。
```c
#include <stdio.h>
int main() {
int num;
printf("请输入一个不多于5位数的正整数:");
scanf("%d", &num);
if (num >= 10000) {
printf("%d\n", num / 10000);
num %= 10000;
}
if (num >= 1000) {
printf("%d\n", num / 1000);
num %= 1000;
}
if (num >= 100) {
printf("%d\n", num / 100);
num %= 100;
}
if (num >= 10) {
printf("%d\n", num / 10);
num %= 10;
}
printf("%d\n", num);
return 0;
}
```
阅读全文