(1) 对数组中的各数据,一次比较相邻的两个元素大小。
(2) 如果前面的数据大于后面的数据,就交换两个数据。经过第一轮的多次排序之后,便可把最小的数据排好。
(3) 然后,再用同样的方法把剩下的数据诸葛进行比较,最后便可按照从小到大的顺序排好数组中个数据的顺序。
//冒泡排序
#include <stdio.h>
void BubbleSort(int *a,int len)
{
int i,j,temp;
for(i=0;i<len;i++)
{
for(j=len-1;j>i;j--)
{
if(a[j-1]>a[j])
{
temp=a[j-1];
a[j-1]=a[j];
a[j]=temp;
}
}
}
}
int main()
{
int a[10]={123,54,78,35,65,78,21,68,12,50};
BubbleSort(a,10);
for(int i=0;i<10;i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}