C언어로 quicksort 구현 해봤는데 안되네요ㅠㅜ 왜 그런걸까요?

미해결질문
코알못 프로필

'''#include

int quicksort(int A[], int p, int q);

int partition(int A[], int p, int q);

int main()

{

int num[100]={0,}, n;

scanf("%d", &n);

for(int i=0; i<n; i++) scanf("%d", &num[i]);

quicksort(num, 0, n-1);

for(int i=0; i<n; i++) printf("%d", num[i]);

}

int quicksort(int A[], int p, int q)

{

if(p<q){

int r;

r=partition(A, p, q);

quicksort(A, p, r-1);

quicksort(A, r+1, q);

}

}

int partition(int A[], int p, int q)

{

int i=p-1;

for(int j=p; j<q-1; j++){

if(A[j]<A[q]){

i++;

int tmp=A[i];

A[i]=A[j];

A[j]=tmp;

}

}

int tmp=A[i+1];

A[i+1]=A[q];

A[q]=tmp;

}'''