要求: 1)求出它是几位数; 2)分别输出每一位数字
时间: 2023-11-28 13:46:16 浏览: 61
以下是C语言实现输入一个不超过4位的整数,输出它是几位数,分别输出其每位数字,最后将该数逆序输出的代码:
```c
#include <stdio.h>
int main() {
int num, digit, count = 0;
int arr[4] = {0};
printf("请输入一个不超过4位的整数:");
scanf("%d", &num);
if (num < 0) {
num = -num;
}
while (num > 0) {
digit = num % 10;
arr[count] = digit;
count++;
num /= 10;
}
printf("这是一个%d位数,每一位数字分别为:", count);
for (int i = 0; i < count; i++) {
printf("%d ", arr[i]);
}
printf("\n该数的逆序输出为:");
for (int i = count - 1; i >= 0; i--) {
printf("%d", arr[i]);
}
return 0;
}
```
相关问题
输入一个正整数,要求:①求出它是几位数②分别输出每一位数字③按逆序输出各位数字。
请问是需要Python代码实现吗?如果是的话,可以参考以下代码:
```python
num = int(input("请输入一个正整数:"))
# 求出它是几位数
count = 0
temp = num
while temp > 0:
count += 1
temp //= 10
print("它是%d位数" % count)
# 分别输出每一位数字
digits = []
temp = num
while temp > 0:
digits.append(temp % 10)
temp //= 10
digits.reverse()
print("每一位数字为:", end="")
for digit in digits:
print(digit, end=" ")
# 按逆序输出各位数字
print("\n逆序输出各位数字为:", end="")
for digit in digits:
print(digit, end="")
```
运行结果:
```
请输入一个正整数:12345
它是5位数
每一位数字为:1 2 3 4 5
逆序输出各位数字为:54321
```
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
```