用C语言编写冒泡排序的代码且带有注释
时间: 2024-02-28 20:24:54 浏览: 77
冒泡排序 C 语言实现代码
好的,以下是用C语言编写的冒泡排序代码,附有注释:
```
#include <stdio.h>
void bubbleSort(int array[], int size) {
int i, j, temp;
// 外层循环控制排序的轮数,共需要排 size - 1 轮
for (i = 0; i < size - 1; i++) {
// 内层循环控制每一轮的比较和交换操作
for (j = 0; j < size - i - 1; j++) {
// 判断相邻两个元素的大小关系,如果前一个大于后一个则交换它们的位置
if (array[j] > array[j + 1]) {
temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
}
int main() {
int size, i;
printf("请输入数组的大小:");
scanf("%d", &size);
int array[size];
printf("请输入 %d 个整数:", size);
for (i = 0; i < size; i++) {
scanf("%d", &array[i]);
}
bubbleSort(array, size);
printf("排序后的数组为:");
for (i = 0; i < size; i++) {
printf("%d ", array[i]);
}
printf("\n");
return 0;
}
```
在上述代码中,我们定义了 `bubbleSort` 函数用于实现冒泡排序算法。函数接收两个参数,第一个是待排序的数组,第二个是数组的大小。在函数内部,我们使用两个嵌套的 for 循环来实现排序的过程。外层循环控制排序的轮数,共需要排 size - 1 轮。内层循环控制每一轮的比较和交换操作。在每一轮中,我们判断相邻两个元素的大小关系,如果前一个大于后一个则交换它们的位置。
在 `main` 函数中,我们首先从标准输入中读取数组的大小和数组元素,然后调用 `bubbleSort` 函数对数组进行排序。最后输出排序后的结果。
阅读全文