C语言数组升序降序排序
时间: 2024-10-21 11:03:28 浏览: 75
在C语言中,对数组进行排序通常可以使用标准库函数`qsort()`或手动实现排序算法。这里简述两种常见的排序方法:
1. **升序排序** (例如冒泡排序、选择排序、插入排序或快速排序等):
- 冒泡排序示例:
```c
void bubble_sort(int 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]) {
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
```
- 使用`qsort()`函数的例子:
```c
#include <stdlib.h>
// 假设arr是一个整数数组,n是元素个数
qsort(arr, n, sizeof(int), compare_ints);
```
其中,`compare_ints`是一个比较函数,用于`qsort()`。
2. **降序排序** 可以通过稍微修改上述的排序算法,比如在冒泡排序时变成`arr[j] < arr[j+1]`。也可以直接在`qsort()`中传递一个自定义的比较函数,使其返回值表示逆序关系。
阅读全文