关于快排c语言实现中的问题

#include
void quiksort(int a[],int low,int high);

int main(){
    
    int i;
    int num[6]={6,8,5,11,20,10} ;
    quiksort(num,0,5);
    for(i=0;i<6;i++){
        printf("%d ",num[i]);
    }
    return 0;
}

void quiksort(int a[],int low,int high){
    int i,j,temp;
    int flag=a[low];
    
    i=low;
    j=high;
    
    if (i>j)    /*为了让排好的及时返回*/
    {
        return;
    }
    
    while(i!=j){/*为什么这两句复合语句换一下就行了*/
                /*就是说为什么先找比基准大的再找比基准小的*/
        while(a[i]<=flag&&iwhile(a[j]>=flag&&i--;
        }
        
        if(j>i){
            temp=a[i];
            a[i]=a[j];
            a[j]=temp;
        }
    }
    a[low]=a[i];
    a[i]=flag;
    
    quiksort(a, low,i-1);
    quiksort(a,i+1,high);
    
}

你的问题是啥??