1.下标法
#include<stdio.h>
void show(int arr[],int sz)
{
int i = 0;
for(i=0;i<sz;i++)
{
printf("%d ",arr[i]);
}
printf("\n");
}
void bubble_sort(int arr[],int sz)
{
int i = 0,j = 0;
int flag = 0;
for(i=0;i<sz-1;i++)
{
for(j=0;j<sz-i-1;j++)
{
if(arr[j]>arr[j+1])
{
flag=1;
arr[j]^=arr[j+1];
arr[j+1]^=arr[j];
arr[j]^=arr[j+1];
}
}
if(flag == 0)//如果本来已经是有序的数组,则第一轮比较完后就return.
{
return ;
}
}
}
int main()
{
int arr[]={1,2,3,4,6,9,33};
int sz=sizeof(arr)/sizeof(arr[0]);
show(arr,sz);
bubble_sort(arr,sz);
show(arr,sz);
return 0;
}
2.指针法
#include<stdio.h>
void show(int arr[]