用qsort函数排序求最大值C代码
时间: 2024-04-13 22:29:27 浏览: 66
以下是使用qsort函数排序并找到最大值的C代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
// 比较函数,用于qsort排序
int compare(const void *a, const void *b) {
return (*(int*)a - *(int*)b);
}
int main() {
int nums[] = {5, 3, 8, 2, 1, 9, 4, 7, 6};
int size = sizeof(nums) / sizeof(nums[0]);
// 使用qsort函数对数组进行排序
qsort(nums, size, sizeof(int), compare);
// 打印排序后的数组
printf("排序后的数组:");
for (int i = 0; i < size; i++) {
printf("%d ", nums[i]);
}
printf("\n");
// 找到最大值
int max = nums[size - 1];
printf("最大值:%d\n", max);
return 0;
}
```
上述代码中,首先定义了一个整数数组 `nums`,然后使用qsort函数对数组进行排序。`compare`函数作为比较函数传递给qsort函数,用于指定元素的比较方式。排序后,通过取最后一个元素即可得到最大值。最后,将排序后的数组和最大值打印出来。
请注意,上述代码仅为示例,实际使用时需要根据自己的需求进行修改和适配。
阅读全文