48.数组的应用(一)
比较经典比较容易掌握的排序方法:冒泡排序
以升序排列为例冒泡排序的思想:相邻元素两两比较,将较大的数字放在后面,直到将所有数字全部排序。就像小学排队时按大小个排一样,将每个同学拉出来和后面的比比,如果高就放在后面,一直把队伍排好。
班级成绩中,老师把前十名的挑出来了,用冒泡排序把分数排了一下。
#include<stdio.h>
int main()
{
int arr[]={99,94,95,93,92,91,90,88,97,89};
int i,j;
for(i=0;i<10;i++)
{
if(i !=9)
printf("%d,",arr[i]);
else
printf("%d",arr[i]);
}
for(i<8;i>=0;i--)
{
for(j=0;j<=i;j++)
{
if(arr[j]>arr[j+1])
{
int temp;
temp = arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
printf("\n-----排序之后-----\n");
for(i=0;i<10;i++)
{
if(i !=9)
printf("%d,",arr[i]);
else
printf("%d",arr[i]);
}
return 0;
}
运行结果为:
99,94,95,93,92,91,90,88,97,89
-----排序之后-----
88,89,90,91,92,93,94,95,97,99