c语言输入n个数怎么从大到小排序

   2025-02-05 6590
核心提示:可以使用冒泡排序算法来实现从大到小排序。冒泡排序的基本思想是,从第一个元素开始,依次比较相邻的两个元素,如果前一个元素大

可以使用冒泡排序算法来实现从大到小排序。

冒泡排序的基本思想是,从第一个元素开始,依次比较相邻的两个元素,如果前一个元素大于后一个元素,则交换它们的位置,这样一趟下来,最大的元素就会被交换到最后的位置。然后再从第一个元素开始,进行第二次比较,以此类推,直到所有元素都排好序。

以下是使用冒泡排序算法实现从大到小排序的示例代码:

#include <stdio.h>void bubbleSort(int arr[], int n) {    for (int i = 0; i < n - 1; i++) {        for (int 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 n;    printf("请输入需要排序的数字个数:");    scanf("%d", &n);    int arr[n];    printf("请输入%d个数字:", n);    for (int i = 0; i < n; i++) {        scanf("%d", &arr[i]);    }    bubbleSort(arr, n);    printf("从大到小排序后的结果为:");    for (int i = 0; i < n; i++) {        printf("%d ", arr[i]);    }    return 0;}

这段代码首先获取输入的数字个数n,然后创建一个大小为n的数组arr,用于存储输入的数字。接下来,使用for循环依次将n个数字保存到数组中。然后调用bubbleSort函数对数组进行排序。最后,使用for循环输出排序后的结果。

注意:在使用冒泡排序算法时,数组元素的类型应为可比较的类型,例如整数、浮点数等,而不是指针类型、结构体类型等。

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言