用c语言写一个冒泡排序
时间: 2023-02-07 08:11:49 浏览: 114
好的。首先,我们需要一个数组,让我们假设这个数组叫做`numbers`,它包含了要排序的数字。
接下来,我们需要一个双重循环。外层循环的控制变量我们叫做`i`,它的范围是从数组的第一个元素到倒数第二个元素(因为最后一个元素不需要比较)。内层循环的控制变量我们叫做`j`,它的范围是从数组的第二个元素到最后一个元素。
在循环中,我们比较`numbers[j]`和`numbers[j-1]`的大小。如果它们的顺序不对,就交换它们的位置。
综上,代码应该长这样:
```
#include <stdio.h>
int main(void) {
int numbers[] = {4, 5, 2, 1, 3}; // 要排序的数字
int i, j;
// 冒泡排序
for (i = 0; i < 4; i++) { // 外层循环
for (j = 1; j < 5; j++) { // 内层循环
if (numbers[j] < numbers[j-1]) {
int temp = numbers[j];
numbers[j] = numbers[j-1];
numbers[j-1] = temp;
}
}
}
// 输出排序后的数组
for (i = 0; i < 5; i++) {
printf("%d ", numbers[i]);
}
printf("\n");
return 0;
}
```
程序的输出应该是:1 2 3 4 5 。
希望这能帮到你。
阅读全文