用c++编写给一个不多于5位的正整数,要求:①求出它是几位数;②分别打印出每一位数字;③按逆序打印出各位数字,例如原数是321,应输出123。
时间: 2023-11-14 07:25:25 浏览: 171
好的,这是一个简单的实现,以下是代码:
```c++
#include <iostream>
using namespace std;
int main() {
int num, digit = 0, temp;
cout << "请输入一个不多于5位的正整数:";
cin >> num;
if (num >= 10000 || num <= 0) {
cout << "输入错误,请重新输入!" << endl;
return 0;
}
temp = num;
//求出它是几位数
while (temp != 0) {
temp /= 10;
digit++;
}
cout << num << "是" << digit << "位数" << endl;
//分别打印出每一位数字
temp = num;
for (int i = digit - 1; i >= 0; i--) {
int base = pow(10, i);
cout << temp / base << " ";
temp %= base;
}
cout << endl;
//按逆序打印出各位数字
temp = num;
while (temp != 0) {
cout << temp % 10;
temp /= 10;
}
cout << endl;
return 0;
}
```
程序运行后,会提示您输入一个不多于5位的正整数,然后根据输入的数字,求出它的位数、每一位数字,并按逆序打印出各位数字。注意,这个程序只是一个简单的实现,实际上需要考虑更多的错误处理,如输入负数、输入超过5位数的数字等。
阅读全文