#include "stdio.h"
#define N 5
int main(int argc, char const *argv[])
{
int i, j, k, t, a[N] = {};
for (i = 0; i < N; i++)
{
scanf("%d", &a[i]);
}
for (i = 0; i < N - 1; i++) //需要循环几轮
{
k = i;
for (j = i + 1; j < N; j++) //每轮比较的次数
{
if (a[j] < a[k])//找最小值
k = j;//保存最小值
}
if (i != k)//判断最小值是不是在指定位置
{
t = a[i];
a[i] = a[k];
a[k] = t;
}
}
for (i = 0; i < N; i++)
{
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
运行结果如下:

该代码示例展示了如何使用C语言实现冒泡排序算法,对一个整数数组进行升序排列。程序首先读取数组元素,然后通过两层循环进行比较并交换元素,确保每次迭代都将最大的元素‘冒泡’到数组末尾。最后,输出排序后的数组。
1171

被折叠的 条评论
为什么被折叠?



