题目描述 从键盘输入一个长整数(不超过10位),从高位开始逐位分割并输出。 输入描述 正整数n ,不含前导零。 输出描述 分割的整数序列,各整数之间用空格格开。 注意,最后一个数字后面没有空格! (使用C++语言)
时间: 2024-12-07 20:19:23 浏览: 14
题目要求您编写一段C++代码,实现的功能是从用户键盘输入一个非零、不超过10位的正整数,然后将其从高位到低位逐位分割,并按照空格分隔每个数字输出。例如,如果输入的是1234567890,程序应输出:1 2 3 4 5 6 7 8 9 0。请注意,输出字符串的最后一个数字后面不需要添加额外的空格。
以下是示例C++代码:
```cpp
#include <iostream>
#include <sstream>
int main() {
int num;
std::cout << "请输入一个不超过10位的正整数:" << std::endl;
std::cin >> num;
// 使用stringstream将整数转换为字符串并逐位处理
std::stringstream ss(std::to_string(num));
std::string digit;
while (std::getline(ss, digit, '0')) { // 当遇到非0字符时停止读取
std::cout << digit; // 输出当前位
if (!ss.eof()) { // 如果还有后续数字
std::cout << " "; // 添加空格
}
}
return 0;
}
```
阅读全文