#include<stdio.h>
void bubble(int a[],int len){
// int len = sizeof(a)/sizeof(int); //这样写是错误的,因为a传进来的是个指针,sizeof(a)是8
for(int i=0;i<len-1;i++)
for(int j=0;j<len-1;j++)
if(a[j]>a[j+1]){
int t = a[j];
a[j] = a[j+1];
a[j+1] = t;
}
//优化写法
// for(int i=0;i<len-1;i++){
// int flag = 0;
// for(int j=0;j<len-1-i;j++){//-i是因为后面已经排好了
// if(a[j]<a[j+1]){
// flag = 1;
// int t = a[j];
// a[j] = a[j+1];
// a[j+1] = t;
// }
// }
// if(flag==0)
// break;//一次下来数组没有变化,则已完成排序
// }
}
void print (int a[],int len){
for(int i=0;i<len;i++)
printf("%d ",a[i]);
putchar('\n');
}
main(){
int a[]={ 1,3,5,9,2,4,10,8,7};
int len = sizeof(a)/sizeof(int);
bubble(a,len);
print(a,len);
}