📜  Numeri in ordine crescente - C 编程语言(1)

📅  最后修改于: 2023-12-03 15:33:13.839000             🧑  作者: Mango

Numeri in ordine crescente - C 编程语言

C 编程语言是一种广泛使用的通用编程语言。它支持面向过程、过程性、结构性和面向对象编程范式。在本文中,我们将讨论如何使用 C 编程语言编写一个程序,以便对一组数字按顺序排序。

问题

我们有一个包含一组随机数字的数组。我们需要编写一个程序,该程序能够将这个数组按升序排序。例如,如果数组包含的数字是 [2, 4, 1, 3, 5],那么我们需要排序后得到:[1, 2, 3, 4, 5]。

解决方案

为了按顺序排序,我们可以使用一种称为“冒泡排序(Bubble Sort)”的算法。该算法基本上是将相邻的数字进行比较,并在必要时进行交换的过程。下面是一个按升序排序数组的 C 程序示例:

#include <stdio.h>

void bubble_sort(int array[], int n) {
    int i, j, temp;
    for (i = 0; i < n; i++) {
        for (j = i + 1; j < n; j++) {
            if (array[j] < array[i]) {
                temp = array[j];
                array[j] = array[i];
                array[i] = temp;
            }
        }
    }
}

int main() {
    int i, n, array[100];
    printf("Enter number of elements: ");
    scanf("%d", &n);
    printf("Enter %d elements:\n", n);
    for (i = 0; i < n; i++) {
        scanf("%d", &array[i]);
    }

    bubble_sort(array, n);

    printf("Sorted array in ascending order:\n");
    for (i = 0; i < n; i++) {
        printf("%d\n", array[i]);
    }

    return 0;
}

在上面的程序中,bubble_sort() 函数接受一个整数数组和其大小,并执行冒泡排序算法。在冒泡排序算法中,我们使用两个嵌套的 for 循环,比较和交换相邻的数字,直到整个数组按顺序排列。最后,我们输出排序好的数组。

总结

在本文中,我们讨论了 C 编程语言中的冒泡排序算法,以按升序排列一个数字数组为例。在编写 C 程序时,我们可以使用内置的函数和库,来加快开发过程。