本文提供了一个详细的C语言实现冒泡排序算法的例子。通过逐步解析代码,帮助读者理解如何在C程序中应用这种常见的排序方法来整理数组元素。适合初学者学习和参考。
C语言中的冒泡排序是一种简单的排序算法。在进行排序时,它会多次遍历待排序的数组,并通过比较相邻元素来逐步将较大的元素移动到序列的一端(即“冒泡”上来)。每次遍历后,最大的未排序元素都会被放置到最后一个位置上。这个过程会重复执行直到所有元素都被正确地排列好。
以下是C语言中实现冒泡排序的一个简单示例:
```c
#include
void bubbleSort(int arr[], int n) {
for (int i = 0; i < n-1; i++) {
// 最后i个元素已经是排好的,所以这里遍历n-i-1次
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;
}
}
}
}
void printArray(int arr[], int size) {
for (int i=0; i < size; i++)
printf(%d , arr[i]);
printf(\n);
}
int main() {
int data[] = {64, 34, 25, 12, 22, 11, 90};
int n = sizeof(data)/sizeof(data[0]);
bubbleSort(data, n);
printf(Sorted array: \n);
printArray(data, n);
}
```
这段代码首先定义了一个冒泡排序函数`bubbleSort()`,该函数接受一个整数数组和数组大小作为参数。在主程序中创建了待排序的数组,并调用了这个函数来对数据进行排序,最后使用`printArray()` 函数输出排好序的结果。
以上就是C语言中实现冒泡法排序的基本方法。