c 数组排序

admin 23 0

在C语言中,数组排序通常可以通过多种算法来实现,比如冒泡排序、选择排序、插入排序、快速排序、归并排序等,我将为你展示一个简单的冒泡排序算法的实现。

冒泡排序是一种简单的排序算法,它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来,遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。

以下是一个使用冒泡排序对整数数组进行排序的C语言代码示例:

```c

#include

void bubbleSort(int arr[], int n) {

int i, j, temp;

for(i = 0; i < n-1; i++) {

for (j = 0; j < n-i-1; j++) {

if (arr[j] > arr[j+1]) {

// 交换 arr[j] 和 arr[j+1]

temp = arr[j];

arr[j] = arr[j+1];

arr[j+1] = temp;

}

}

}

}

void printArray(int arr[], int size) {

int i;

for (i=0; i < size; i++)

printf("%d ", arr[i]);

printf("\n");

int main() {

int arr[] = {64, 34, 25, 12, 22, 11, 90};

int n = sizeof(arr)/sizeof(arr[0]);

bubbleSort(arr, n);

printf("Sorted array: \n");

printArray(arr, n);

return 0;

```

在这个示例中,`bubbleSort` 函数实现了冒泡排序算法,`printArray` 函数用于打印数组的内容,在 `main` 函数中,我们定义了一个整数数组 `arr`,并计算了数组的长度 `n`,我们调用 `bubbleSort` 函数对数组进行排序,并使用 `printArray` 函数打印排序后的数组。