冒泡排序
什么是冒泡排序?简而言之,冒泡排序就是重复的遍历待排序的数据,依次比较两个相邻的数据,若他们的顺序不符合规则,则让他们交换一下位置,数据经过反复的交换之后,最后最大或者最小的会一点点的移动到一端。
代码实现
#include<stdio.h>
#define N 10
void main()
{
int a[N];
int i,j,t;
printf("input %d numbers:\n",N);
for(i=0;i<N;i++)
scanf("%d",&a[i]);
for(j=0;j<N-1;j++) /*进行9次循环 实现9趟比较*/
for(i=0;i<N-1-j;i++) /*在每一趟中进行9-j次比较*/
if(a[i]>a[i+1]) /*相邻两个数比较,想降序只要改成a[i]<a[i+1]*/
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
printf("the sorted numbers:\n");
for(i=0;i<N;i++)
printf(" %d",a[i]);
}