匿名用户
1级
2010-03-30 回答
!!!!!!!!
!!!!!!!!
!!!!!!!!
注:C语言中可以将数组长度定义为变量,只是这种方法在vs中编译不能通过,但在更为标准的dev中以及gcc中完全可以编译通过!
一定要给分啊!自己写的!
#include"stdio.h"
#include"conio.h"
int main()
{
int length;
printf("请输入要排序的数字个数:\n");
scanf("%d",&length);
int data[length],i;
void MBquicksort(int *imput,int start,int end);
printf("请依次输入这些数字,以空格分隔:\n");
for(i=0;i
MBquicksort(data,0,length-1);
for(i=0;i
getch();
return 0;
}
void MBquicksort(int *imput,int start,int end)//imput为需要进行排序的数组,start与end分别为将要进行排序的起始与末尾元素下标。
{
if(start
{
int x=imput[start];//用来暂时存放中轴元素。
int Start=start,End=end;
while(start
{
while((start
imput[start]=imput[end];
while((start=x))++start;
imput[end]=imput[start];
}
imput[start]=x;
MBquicksort(imput,Start,start-1);
MBquicksort(imput,start+1,End);
}
}