可以使用C语言的标准库函数qsort()来对数组进行从大到小的排序。
#include <stdio.h>
#include <stdlib.h>
// 比较函数,用于qsort()排序时指定排序规则
int compare(const void *a, const void *b) {
return (*(int*)b - *(int*)a);
}
int main() {
int arr[] = {5, 2, 8, 1, 3};
int n = sizeof(arr) / sizeof(arr[0]);
qsort(arr, n, sizeof(int), compare);
printf("数组从大到小排序后:\n");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
return 0;
}
在上面的代码中,我们定义了一个比较函数compare(),它会根据传入的两个参数的大小来决定排序规则。然后在main()函数中,我们使用qsort()函数对数组arr进行排序,排序规则由compare()函数指定。
运行以上代码,输出结果会是:8 5 3 2 1,即数组从大到小排序后的结果。