c++给出一个不多于6位的正整数,要求: (1)求出它是几位数; (2)分别输出每一位数; (3)按逆序输出各位数字,例如原数为56312,应输出为21365。
时间: 2024-10-11 18:16:13 浏览: 41
在 C++ 中,你可以通过以下步骤来实现这个功能:
```cpp
#include <iostream>
#include <string>
int main() {
int num;
std::cout << "请输入一个不超过6位的正整数:";
std::cin >> num;
// 检查输入是否合法
if (num <= 0 || num >= pow(10, 6)) {
std::cerr << "输入错误!数字必须在1到99999之间。\n";
return 1;
}
// 求出位数并输出
int digit_count = 0;
while (num > 0) {
digit_count++;
num /= 10;
}
std::cout << "这是一个" << digit_count << "位数。\n";
// 输出每一位
std::cout << "每一位数字依次为:";
while (digit_count > 0) {
int last_digit = num % 10;
std::cout << last_digit;
num /= 10;
digit_count--;
if (digit_count > 0) {
std::cout << " ";
}
}
std::cout << "\n";
// 逆序输出各位数字
std::cout << "逆序输出为:";
for (int i = digit_count - 1; i >= 0; i--) {
std::cout << num % 10;
num /= 10;
}
std::cout << "\n";
return 0;
}
```
阅读全文