用C语言解决以下问题:通过函数用冒泡法对10个整数按降序进行排序
时间: 2023-06-16 17:06:04 浏览: 110
可以使用以下代码实现:
```c
#include <stdio.h>
void bubbleSort(int arr[], int n) {
int i, j;
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - i - 1; j++) {
if (arr[j] < arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main() {
int arr[10] = { 5, 3, 8, 9, 1, 6, 2, 7, 4, 0 };
int n = sizeof(arr) / sizeof(arr[0]);
int i;
printf("Original array: ");
for (i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
bubbleSort(arr, n);
printf("\nDescending order: ");
for (i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
输出结果为:
```
Original array: 5 3 8 9 1 6 2 7 4 0
Descending order: 9 8 7 6 5 4 3 2 1 0
```
在 `bubbleSort` 函数中,使用了两个嵌套的循环,每次比较相邻的两个元素,如果前面的元素比后面的大,则交换它们的位置。这样一轮循环结束后,最大的元素就会被放在数组的最后面。重复执行这个过程,直到整个数组都被排序。
阅读全文