给定一个整型数组,使用冒泡排序,对于给定的数据进行升序排序。
首先看一下原理:
代码(单独作为一个函数):
#include <stdio.h>
#define N 5
void bubble_sort(int [], int );
int main()
{
int num[] = {8,2,7,5,4};
int i;
printf(“排序前:”);
for (i = 0; i < N; i++)
printf("%4d", num[i]);
bubble_sort(num, N);
printf("\n排序后:");
for (i = 0; i < N; i++)
printf("%4d", num[i]);
return 0;
}
void bubble_sort(int a[], int n) // 冒泡排序函数
{
int i, j, t;
for (i = 0; i < n-1; i++) // 重复n-1轮
{
for (j = 0; j < n-1-i; j++) // 每轮执行n-1-i次比较,使得最大的数移动到最后
{
if (a[j] > a[j+1])
{
t = a[j]; a[j] = a[j+1]; a[j+1] = t;
}
}
}
return ;
}
————————————————
版权声明:本文为CSDN博主「杨丰玉」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/frueyang/article/details/103142993