给出一个不多于5位的正整数,要求: ①求出它是几位数; ②分别打印出每一位数字; ③按逆序打印出各位数字,例如原数为321,应输出为123。 ④如果输入的是一个超过5位的整数,输出“你的输入有误”
时间: 2024-11-18 21:17:12 浏览: 5
为了完成这个任务,你可以编写一个简单的程序,使用Python语言作为示例。以下是实现该功能的一个函数:
```python
def process_number(num):
if abs(num) > 99999: # 检查是否超过5位数
return "你的输入有误"
# 计算位数并存储每一位数字
num_str = str(num)
digits = [int(digit) for digit in num_str]
length = len(digits)
# 打印每一位数字
print("它是一个{}位数".format(length))
for i, digit in enumerate(digits):
print("第{}位数字是{}".format(i+1, digit))
# 按逆序打印
reversed_digits = digits[::-1]
print("逆序后的数字是{}".format(''.join(map(str, reversed_digits))))
# 示例调用
process_number(321)
```
当你运行此函数,并传入一个不超过5位的正整数如321,它会按照描述的要求进行处理。如果输入的数值大于5位,就会返回错误消息。
相关问题
4.7 给一个不多于5位的正整数,要求:①求出它是几位数; ②分别输出每一位数字;
输入一个不多于5位的正整数,可以先将其转换为字符串,然后利用字符串长度函数 len() 求出它是几位数,再用字符串切片或循环遍历字符串取出每一位数字。
示例代码:
```python
num = input("请输入一个不多于5位的正整数:")
length = len(num)
print("它是{}位数".format(length))
print("每一位数字分别为:")
for i in range(length):
print(num[i])
```
运行示例:
```
请输入一个不多于5位的正整数:1234
它是4位数
每一位数字分别为:
1
2
3
4
```
C语言给一个不多于5位的正整数,要求:①求出它是几位数;②分别打印出每一位数字;③按逆序打印出各位数字。(数据容错判断)
```c
#include <stdio.h>
int main() {
int num, count = 0;
printf("请输入一个不多于5位的正整数:");
scanf("%d", &num);
if (num < 0 || num > 99999) {
printf("输入错误,请输入一个不多于5位的正整数!\n");
return 0;
}
int temp = num;
while (temp != 0) {
count++;
temp /= 10;
}
printf("它是%d位数\n", count);
printf("每一位数字分别是:");
for (int i = count; i > 0; i--) {
printf("%d ", num / (int)pow(10, i - 1) % 10);
}
printf("\n逆序打印出各位数字:");
while (num != 0) {
printf("%d", num % 10);
num /= 10;
}
printf("\n");
return 0;
}
```
阅读全文