第1个回答 2011-06-29
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
static void quick_sort(int arry[], int low, int hight);
int main(int argc, char *argv[])
{
int i, arry[10];
printf("please input ten number:");
for(i = 0; i < 10; i++)
{
scanf("%d", &arry[i]);
}
printf("\n");
quick_sort(arry, 0, 10);
for(i = 0; i < 10; i++)
{
printf("%d ",arry[i]);
}
printf("\n");
return 0;
}
void quick_sort(int arry[], int low, int hight)
{
int temp;
int i, j;
if (low >= hight) return;
i = low;
j = hight -1;
temp = arry[i];
while (i < j)
{
while (arry[j] > temp && i < j) j--;
if (i < j)
arry[i++] = arry[j];
while (arry[i] < temp && i < j) i++;
if (i < j)
arry[j--] = arry[i];
}
arry[i] = temp;
quick_sort(arry, low, j);
quick_sort(arry, ++i, hight);
}