#include <stdio.h>
int main(){
printf("\n");
int list[]={5,2,1,6,9,8,3,4,7,};
int len=sizeof(list)/sizeof(list[0]);//求数组长度
printf("原始数组为:");
printList(list,len);
bubbleSort(list,len);
printf("排序后数组:");
printList(list,len);
printf("\n");
return 0;
}
//打印数组元素
int printList(int* list,int len){
int i;
for(i=0;i<len;i++){
printf("%d",list[i]);
}
printf("\n\n");
return 0;
}
int bubbleSort(int* list,int len){
printf("****bubbleSort****\n");
int i,j,tmp;
int flag;//一次冒泡是否有元素交换,没有就提前退出
for(i=0;i<len-1;i++){
flag=0;
for(j=0;j<len-1-i;j++){
if(list[j]>list[j+1]){
tmp= list[j];
list[j]=list[j+1];
list[j+1]=tmp;
flag=1;
}
}
if(flag==0){break;}
printf("-第%d次冒泡:",i+1);
printList(list,len);
}
return 0;
}