#include <stdio.h>
void mySwap(int *a, int i, int j)
{
int tmp = a[i];
a[i] = a[j];
a[j] = tmp;
}
void mySort(int *a, int len)
{
int i, j;
for (i=0; i < len-1; i++) // 将最大元素沉底的次数
{
for (j = 0; j < len-1-i; j++) // 将当前数组最大元素沉底
{
if (a[j] > a[j+1])
{
mySwap(a, j, j+1); // 交换
}
}
}
}
void mySort1(int *a, int len)
{
if (len == 1)
return;
int i, j;
for (j = 0; j < len-1; j++)
{
if (a[j] > a[j+1])
{
mySwap(a, j, j+1); // 交换
}
}
mySort1(a, len-1);
}
void myPrint(int *a, int len)
{
int i;
for (i = 0; i < len; i++)
{
printf ("%4d", a[i]);
}
printf ("\n");
}
int main()
{
int a[] = {9,8,7,6,5,4,3,2,1,0};
int len = sizeof(a)/sizeof(a[0]);
// mySort(a, len);
mySort1(a, len);
myPrint(a, len);
return 0;
}