题目函数的功能是对参数p传送的首地址,n为元素个数的浮点型数组按升序排序。C语言写
时间: 2024-03-17 09:47:09 浏览: 59
可以使用C语言标准库中的`qsort()`函数来对浮点型数组进行排序,具体实现如下:
```c
#include <stdio.h>
#include <stdlib.h>
// 比较函数,用于升序排序
int cmp(const void *a, const void *b) {
const double *pa = (const double *)a;
const double *pb = (const double *)b;
if (*pa < *pb) {
return -1;
} else if (*pa > *pb) {
return 1;
} else {
return 0;
}
}
// 排序函数
void sort(double *p, int n) {
qsort(p, n, sizeof(double), cmp);
}
int main() {
double arr[] = {3.14, 2.71, 1.618, 0.618, 1.414};
int n = sizeof(arr) / sizeof(double);
sort(arr, n);
for (int i = 0; i < n; i++) {
printf("%.3f ", arr[i]);
}
printf("\n");
return 0;
}
```
这个程序定义了一个比较函数`cmp()`,用于升序排序,然后调用`qsort()`函数对浮点型数组进行排序。最后用循环打印排序后的数组元素。
阅读全文