在C語言中,sort函數用于對數組進行排序。其原型如下:
void qsort(void *base, size_t nmemb, size_t size, int (*compar)(const void *, const void *));
參數說明:
compar函數是用戶自定義的比較函數,用于判斷兩個元素的大小關系。它應該返回一個整數值,表示兩個元素的大小關系:
根據用戶定義的比較函數,sort函數會將數組中的元素按照升序進行排序。
例如,以下代碼演示了如何使用sort函數對整型數組進行排序:
#include <stdio.h>
#include <stdlib.h>
int compare(const void *a, const void *b) {
return (*(int*)a - *(int*)b);
}
int main() {
int arr[] = {9, 5, 7, 2, 4};
int n = sizeof(arr) / sizeof(arr[0]);
qsort(arr, n, sizeof(int), compare);
printf("Sorted array: ");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
return 0;
}
以上代碼輸出結果為:Sorted array: 2 4 5 7 9,表示數組已按升序排列。