版权声明:本文为博主原创文章,未经博主允许不得转载。可联系邮箱[email protected] https://blog.csdn.net/Justin_bibo/article/details/80807014
#include<stdio.h>
int main()
{
void bubble_sort(int *a,int n);
int a[10]={10,5,8,6,4,1,2,3,6,0},i;
bubble_sort(a,10);
for(i=0;i<10;i++)
printf("%d ",a[i]);
return 0;
}
void bubble_sort(int *a,int n)//a是数组首指针,n是数组大小
{
int i,j,exchange;
int tag=0;//交换标志,如果某一趟没有发生任何交换,则序列已经有序,则停止排序。
for(i=n;i>0;i--)
{
tag=0;
for(j=0;j<i;j++)
{
if(a[j]>a[j+1])//逆序则交换
{
exchange=a[j];
a[j]=a[j+1];
a[j+1]=exchange;
tag=1;
}
}
if(tag==0)
return;
}
return;
}