利用C++实现对整型数组和double类型数组进行排序的函数模板并调用
时间: 2023-06-10 20:04:17 浏览: 224
C++实践排序函数模板项目的参考方法
好的,下面是利用C语言实现对整型数组和double类型数组进行排序的函数模板,并调用的示例代码:
```c
#include <stdio.h>
// 整型数组排序模板
void sortInt(int arr[], int len) {
int i, j, temp;
for (i = 0; i < len - 1; i++) {
for (j = 0; j < len - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
// double类型数组排序模板
void sortDouble(double arr[], int len) {
int i, j;
double temp;
for (i = 0; i < len - 1; i++) {
for (j = 0; j < len - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main() {
// 整型数组排序测试
int intArr[] = { 3, 1, 5, 2, 4 };
int len1 = sizeof(intArr) / sizeof(int);
sortInt(intArr, len1);
printf("整型数组排序结果:");
for (int i = 0; i < len1; i++) {
printf("%d ", intArr[i]);
}
printf("\n");
// double类型数组排序测试
double doubleArr[] = { 3.2, 1.1, 5.4, 2.8, 4.9 };
int len2 = sizeof(doubleArr) / sizeof(double);
sortDouble(doubleArr, len2);
printf("double类型数组排序结果:");
for (int i = 0; i < len2; i++) {
printf("%.1f ", doubleArr[i]);
}
printf("\n");
return 0;
}
```
以上代码会先利用模板函数sortInt对整型数组进行排序,再利用模板函数sortDouble对double类型数组进行排序,并输出结果,示例输出如下:
```
整型数组排序结果:1 2 3 4 5
double类型数组排序结果:1.1 2.8 3.2 4.9 5.4
```
阅读全文