用c++编写一个程序输入一个不多于4位的正整数,要求(1)输出是它几位数 (2)分别输出每一位的数字
时间: 2024-12-12 20:31:30 浏览: 10
c++编写程序实现两个超长正整数(每个最长80位数字)的减法运算
在C++中,你可以通过遍历输入的字符串并逐个提取每个字符来完成这个任务。下面是一个简单的程序示例:
```cpp
#include <iostream>
#include <string>
int main() {
// 获取用户输入
std::string num;
std::cout << "请输入一个不多于4位的正整数:";
std::cin >> num;
// 检查输入是否合法,只保留整数部分
if (!std::all_of(num.begin(), num.end(), ::isdigit)) {
std::cerr << "输入无效,只能包含数字!" << std::endl;
return 1;
}
// 如果输入超过4位,截断多余的字符
if (num.length() > 4) {
num.resize(4);
}
// 输出位数
int digit_count = num.length();
std::cout << "输入的数字有" << digit_count << "位。\n";
// 输出每位数字
std::cout << "各位数字分别是:";
for (char c : num) {
std::cout << c << " ";
}
std::cout << "\n";
return 0;
}
```
在这个程序里,我们首先获取用户的输入,然后检查输入是否全由数字组成。接着,我们会检查输入的长度,如果超过4位则截断。最后,遍历字符串并打印出每位的数字。
阅读全文