用实参、形参为数组名的方法定义长度为3的整型数组,采用函数调用实现按照从大到小的顺序排序。在主函数中输出排序前和排序后的数组。
时间: 2024-03-20 20:43:17 浏览: 59
好的,这是一个关于数组排序的问题。以下是实现方式:
```c
#include <stdio.h>
// 定义一个函数,实现从大到小排序
void sortDesc(int arr[], int size) {
int temp;
for(int i=0; i<size-1; i++) {
for(int j=i+1; j<size; j++) {
if(arr[i] < arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
}
int main() {
int arr[3] = {3, 1, 2}; // 定义一个长度为3的整型数组
int size = sizeof(arr) / sizeof(arr[0]); // 数组的长度
printf("排序前的数组:");
for(int i=0; i<size; i++) {
printf("%d ", arr[i]); // 输出排序前的数组
}
printf("\n");
sortDesc(arr, size); // 调用函数进行排序
printf("排序后的数组:");
for(int i=0; i<size; i++) {
printf("%d ", arr[i]); // 输出排序后的数组
}
printf("\n");
return 0;
}
```
输出结果为:
```
排序前的数组:3 1 2
排序后的数组:3 2 1
```
这个程序中,我们定义了一个 `sortDesc` 函数,用于实现从大到小的排序。主函数中先输出排序前的数组,然后调用 `sortDesc` 函数进行排序,最后再输出排序后的数组。在 `sortDesc` 函数中,我们使用了冒泡排序算法。
阅读全文