编写一程序,让用户自由地从键盘上输入整数,直到输入数字0时结束。把用户输入的数据保存在 STL标准模板库的容器Vector<int> 定义的对象中,并对用户输入的所有数进行升序排序并输出。不能用algorithm库
时间: 2024-02-06 19:09:58 浏览: 60
下面是程序代码:
```cpp
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> nums; // 定义存放整数的容器对象
int n;
// 循环输入整数,直到输入0时结束
do {
cin >> n;
nums.push_back(n); // 将输入的整数添加到容器中
} while (n != 0);
// 对存放整数的容器进行升序排序
for (int i = 0; i < nums.size(); i++) {
for (int j = i + 1; j < nums.size(); j++) {
if (nums[i] > nums[j]) {
int temp = nums[i];
nums[i] = nums[j];
nums[j] = temp;
}
}
}
// 输出升序排序后的整数
for (int i = 0; i < nums.size() - 1; i++) {
cout << nums[i] << " ";
}
cout << endl;
return 0;
}
```
程序中使用了一个do-while循环,循环中不断从键盘输入整数,并将输入的整数添加到定义的vector<int>类型的对象中。当输入的整数为0时,循环结束。
然后,程序使用两重循环对存放整数的容器进行冒泡排序,这里没有使用algorithm库中的sort函数。最后,程序遍历容器中的元素输出升序排序后的整数。
阅读全文