声明一个整型数组,使用C++标准模板库(STL)中的查找算法find()进行数据的查找,然后应用排序算法sort()对数据进行升序和降序排序。(sy4_6.cpp)
时间: 2024-02-27 17:57:01 浏览: 40
好的,以下是代码:
```c++
#include <iostream>
#include <algorithm>
int main() {
int arr[] = { 5, 3, 8, 1, 6, 7, 2, 4, 9, 0 };
int n = sizeof(arr) / sizeof(int);
// 查找 6 的位置
auto it = std::find(arr, arr + n, 6);
if (it != arr + n) {
std::cout << "Found 6 at position " << it - arr << std::endl;
} else {
std::cout << "6 not found" << std::endl;
}
// 升序排序
std::sort(arr, arr + n);
std::cout << "Ascending order: ";
for (int i = 0; i < n; ++i) {
std::cout << arr[i] << ' ';
}
std::cout << std::endl;
// 降序排序
std::sort(arr, arr + n, std::greater<int>());
std::cout << "Descending order: ";
for (int i = 0; i < n; ++i) {
std::cout << arr[i] << ' ';
}
std::cout << std::endl;
return 0;
}
```
这段代码定义了一个整型数组 `arr`,并使用 `sizeof` 运算符计算出数组的大小。然后,我们使用 `std::find` 算法查找数组中是否存在元素 6,并通过迭代器计算出它的位置。接着,我们使用 `std::sort` 算法对数组进行升序排序,并通过循环输出排序后的结果。最后,我们再次使用 `std::sort` 算法对数组进行降序排序,并输出结果。需要注意的是,在对数组进行降序排序时,需要传入一个比较函数对象 `std::greater<int>()`,这是一个函数对象,表示比较两个元素大小的方式为第一个参数大于第二个参数。