#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);
}