冒泡法
冒泡排序每一趟排序把最大的放在最右边。
比如:
87 12 56 45 78
87和12交换:12 87 56 45 78
87和56交换: 56 87 45 78
87和45交换: 45 87 78
87和78交换: 78 87
到此第一趟排序结束,接下来的每一趟排序都是这样。
#include<stdio.h>
void
Print(
int
*num,
int
n)
{
int
i;
for
(i = 0; i < n; i++)
printf
(
"%d "
, num[i]);
puts
(
"\n"
);
return
;
}
void
Bubble_Sort(
int
*num,
int
n)
{
int
i, j;
for
(i = 0; i < n; i++)
{
for
(j = 0; i + j < n - 1; j++)
{
if
(num[j] > num[j + 1])
{
int
temp = num[j];
num[j] = num[j + 1];
num[j + 1] = temp;
}
Print(num, n);
}
}
return
;
}
int
main()
{
int
num[8] = {87, 12, 56, 45, 78};
Bubble_Sort(num, 5);
return
0;
}