用简单的C++语言编写下列程序: 输入一个不多于5位的正整数; 输出这个数是几位数; 分别输出每一位数字; 按逆序输出各位数字。
时间: 2024-10-23 15:06:20 浏览: 20
python 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字 (示例)
5星 · 资源好评率100%
在C++中,我们可以使用`cin`输入数据,`setw`设置输出宽度,并使用`%d`格式化输出。以下是满足您需求的简单程序:
```cpp
#include <iostream>
using namespace std;
int main() {
int num;
cout << "请输入一个不多于5位的正整数: ";
// 输入数字
cin >> num;
// 检查数字长度并处理溢出情况
if (num <= 0 || num >= pow(10, 5)) {
cerr << "输入错误,数字应为1到99999之间。\n";
return 1;
}
// 输出位数
int digit_count = floor(log10(num) + 1);
cout << "这个数是" << digit_count << "位数。\n";
// 输出每一位数字
for (int i = digit_count - 1; i >= 0; i--) {
cout << "第" << i+1 << "位数字是: " << num % 10 << "\n";
num /= 10;
}
// 按逆序输出各位数字
cout << "逆序输出:\n";
while (num > 0) {
cout << num % 10 << " ";
num /= 10;
}
cout << endl;
return 0;
}
```
阅读全文