函数模版将数组从大到小排序
时间: 2023-10-02 08:07:04 浏览: 48
以下是一个使用函数模板将数组从大到小排序的示例代码:
```c++
#include <iostream>
using namespace std;
// 函数模板
template <typename T>
void bubbleSort(T arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] < arr[j+1]) {
// 交换 arr[j] 和 arr[j+1]
T temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
int main() {
int arr[] = {5, 3, 8, 1, 2, 9};
int n = sizeof(arr) / sizeof(arr[0]);
bubbleSort(arr, n);
cout << "排序后的数组:";
for (int i = 0; i < n; i++) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
```
在这个示例中,我们使用了函数模板 `bubbleSort` 来对任意类型的数组进行排序。该函数使用冒泡排序算法来将数组从大到小排序。在 `main` 函数中,我们声明了一个整数数组 `arr`,并使用 `sizeof` 运算符计算出数组元素的个数 `n`。然后,我们调用 `bubbleSort` 函数来对数组进行排序,并输出排序后的结果。
注意,在使用函数模板时,需要在函数名后面加上尖括号 `<typename T>`,其中 `T` 是一个占位符,表示任意类型。在函数体中,我们可以使用 `T` 来代表数组元素的类型。