0
void quicksort(float x[],int first,int last)
{
float temp;int j, pivot, i;
if(first<last){
pivot=first;
i=first;
j=last;
while(i<j){
while(x[i]<=x[pivot]&&i<last)
i++;
while(x[j]>x[pivot])
j--;
if(i<j){
temp=x[i];
x[i]=x[j];
x[j]=temp;
}
}
temp=x[pivot];
x[pivot]=x[j];
x[j]=temp;
quicksort(x,first,j-1);
quicksort(x,j+1,last);
}
}
main()
{
float a[]={4.0,6.0,8.5,9.1,6,11.1,1.1};
//int len=6;
int len=7;
quicksort(a,0,len);
int i=0;
for(i=0;i<len;i++)
printf("%d\n",a[i]);
}
不明原因的行爲在運行時間上的代碼塊,打印亂碼和循環沒有後7次迭代結束執行的推移,直到它給分段故障在端。在命令行上使用gcc編譯它不會有幫助。快速排序代碼在C中,64位的Windows機器
但在我的codeforces自定義測試中運行良好使用GNU C++ 4.7即打印亂碼7次後結束。但使用GNU C 4
如何解決這個時候給
Runtime error: exit code is 11
?