#include<stdio.h>
void bobble_sort(int arr[],int sz)
{
int i = 0;
for(i=0;i<sz-1;i++){ //遍历时防止越界i<sz-1,
int j = 0;
int flag=1;
for(;j<sz-1-i;j++){ //冒泡排序时数组元素每遍历一次,把最大或者最小值排在最后,第二次遍历时就少一个元素。
if(arr[j]>arr[j+1]){
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
flag = 0;
}
}
if(flag ==1){
break;
}
}
}
void Show ( int arr[],int sz)
{
int i = 0;
for(;i<sz;i++){
printf("%d ",arr[i]);
}
printf("\n");
}
int main()
{
int arr[]={2,4,3,6,5,8,7,9,1,0};
int sz = sizeof(arr)/sizeof(arr[0]); //数组元素个数
Show(arr,sz);
bobble_sort(arr,sz);
Show(arr,sz);
}
用函数实现一个对整形数组的冒泡排序/
最新推荐文章于 2023-03-10 16:26:20 发布