用c++编写程序对10个整数进行排序。随机输入10个整数,然后进行排序,再输出从小到大的顺序和从大到小的顺序。
时间: 2024-09-20 08:17:14 浏览: 38
在 C++ 中,我们可以使用标准库中的 `<algorithm>` 和 `<random>` 来实现这个功能。这里是一个简单的示例,我们将使用 `std::sort` 函数对整数数组进行排序,并使用 `std::generate` 随机生成整数。
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
#include <random>
int main() {
std::vector<int> numbers(10); // 创建一个包含10个元素的整数向量
std::srand(std::time(0)); // 设置随机种子,每次运行都会得到不同的序列
// 随机填充数字
for (size_t i = 0; i < numbers.size(); ++i) {
numbers[i] = std::rand() % 100; // 生成0到99之间的随机数
}
// 输出原始序列
std::cout << "Original sequence: ";
for (const auto& num : numbers) {
std::cout << num << ' ';
}
std::cout << '\n';
// 排序并输出从小到大
std::sort(numbers.begin(), numbers.end());
std::cout << "Sorted in ascending order: ";
for (const auto& num : numbers) {
std::cout << num << ' ';
}
std::cout << '\n';
// 排序并输出从大到小
std::sort(numbers.rbegin(), numbers.rend()); // 使用rbegin/rend反向迭代
std::cout << "Sorted in descending order: ";
for (const auto& num : numbers) {
std::cout << num << ' ';
}
std::cout << '\n';
return 0;
}
```
在这个程序中,我们首先创建了一个大小为10的整数向量,然后使用 `std::random_device` 和 `std::mt19937` 随机引擎生成10个0到99之间的随机整数。接着分别展示了原数组、升序排列后的数组和降序排列后的数组。
阅读全文