1 比较相邻的元素。如果第一个比第二个大,就交换他们两个。
2 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数
3 针对所有的元素重复以上的步骤,除了最后一个
4 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较
#include <stdio.h>
#define SIZE 8
void
bublle_sort(
int
a[],
int
n)
//n为数组a的元素个数
{
int
i,j,temp;
for
(j=0;j<n-1;j++)
for
(i=0;i<n-1-j;i++)
if
(a[i] > a[i+1])
//数组元素大小按升序排列
{
temp = a[i];
a[i] = a[i+1];
a[i+1] = temp;
}
}
int
main(){
int
number[SIZE] = {95, 45, 15, 78, 84, 51, 24, 12};
int
i;
bublle_sort(number,SIZE);
for
(i = 0; i < SIZE; i++)
{
printf
(
"%d "
, number[i]);
}
printf
(
"
"
);
}