冒泡排序是一种简单、常见的排序方式。
#include <stdio.h>
int main()
{
int a[]={90,8,60,75,25,0,100,50,30,95};
int n = sizeof(a)/sizeof(a[0]);//数组长度
int i=0;//比较的轮数,一轮冒出一个数值,直至剩下一个数值不需要比较,即i最大 = n-1;
int j=0;//每轮比较的次数,每一轮的两两比较次数都随着轮数变大而变少,即j最大=n-1-i;
int t;//用于交换两个数值时的中间体
//开始冒泡排序
for(i=0;i<n-1;i++)//一轮一轮的循环
{
for(j=0;j<n-1-i;j++)//每轮的比较循环
{
if(a[j]>a[j+1])//从小到大排列
//满足if条件就交换数值
t = a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
//打印出排序后的数组
printf("sort of array a :\n");
for (i=0;i<10;i++)
{
printf("%d\n",a[i]);
}
}
编译执行后的结果: