在C語言中,可以使用qsort函數對數組進行排序。qsort函數的原型如下:
void qsort(void *base, size_t num, size_t size, int (*compar)(const void *, const void *));
參數說明:
base:指向待排序數組的指針。
num:數組中元素的個數。
size:每個元素的大小(以字節為單位)。
compar:指向函數的指針,用于比較兩個元素的大小。
下面是一個使用qsort函數進行整數數組排序的示例代碼:
#include <stdio.h>
#include <stdlib.h>
// 比較函數,用于比較兩個整數的大小
int compare(const void *a, const void *b) {
return (*(int*)a - *(int*)b);
}
int main() {
int arr[] = {5, 2, 1, 3, 4};
int n = sizeof(arr) / sizeof(arr[0]);
// 使用qsort函數對數組進行排序
qsort(arr, n, sizeof(int), compare);
// 輸出排序后的數組
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
輸出結果:
1 2 3 4 5
在上面的代碼中,首先定義了一個比較函數compare
,用于比較兩個整數的大小。然后,創建一個整數數組arr
,并使用qsort函數對數組進行排序。最后,輸出排序后的數組。