C语音对从键盘输入的10个整数进行降序排序; fun函数实现排序后返回第2大的数。
时间: 2024-03-09 15:45:04 浏览: 56
好的,以下是 C 语言代码实现:
```c
#include <stdio.h>
// 冒泡排序函数
void bubbleSort(int arr[], int len) {
int i, j, temp;
for (i = 0; i < len - 1; i++) {
for (j = 0; j < len - i - 1; j++) {
if (arr[j] < arr[j+1]) {
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
// 返回排序后的第二大数
int fun(int arr[], int len) {
bubbleSort(arr, len);
return arr[1];
}
int main() {
int arr[10], i, result;
printf("请输入10个整数:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
bubbleSort(arr, 10);
printf("降序排序后的结果为:\n");
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
result = fun(arr, 10);
printf("\n排序后第2大的数是:%d", result);
return 0;
}
```
首先定义了一个冒泡排序函数 `bubbleSort`,传入参数为一个整型数组和数组长度,实现对数组进行降序排序。然后定义了一个函数 `fun`,传入参数同样是一个整型数组和数组长度,内部调用了 `bubbleSort` 函数进行排序,并返回排在第二位的元素。在主函数中,通过循环输入 10 个整数,然后调用 `bubbleSort` 函数对数组进行降序排序并输出结果,最后调用 `fun` 函数返回第二大的数并输出结果。
阅读全文