求助,大家帮忙看看我的快速排序为什么不能输出
#include "stdio.h"int R[100];
int partition(int i,int h)
{ i=1;
int j, x;
j=h;
R[0]=R[i];
x=R[i];
while (i<j)
{
while (i<j && R[j]>=x)
j--;
R[i]=R[j];
while(i<j && R[i]<=x)
i++;
R[j]=R[i];
}
R[i]=R[0];
return i;
}
void QuickSort(int s,int t){
int k;
if (s<t) {
k=partition(s,t);
QuickSort(s,k-1);
QuickSort(k+1,t);
}
}
void main()
{ int i,n;
printf("输入要排列的总个数:");
scanf("%d",&n);
printf("\n输入要排列的数据:");
for (i=1;i<=n;i++) {
scanf("%d",&R[i]);
}
QuickSort(1,n);
printf("\n输出从小到大排序为:\n");
for (i=1;i<=n;i++)
printf("%5d",R);
}