我是个新手,各位大牛们帮我看看为什么我的代码编译的时候一直显示这个[Error] ld returned 1 exit status
#include<stdio.h>#include<stdlib.h>
#include<math.h>
int A[1000],p,r,q;
int main()
{
void MERGE(int A[1000],int p,int r);
void MERGESORT(int A[1000],int p,int q,int r);
int n;
scanf("%d",&n);
for(int i=1;i<=n;i++)
scanf("%d",&A[i]);
MERGESORT(A,1,q,n);
for (int i=1;i<=n;i++)
{
printf("%d",A[i]);
}
return 0;
}
void MERGESORT(int A[1000],int p,int r)
{
void MERGE(int A[1000],int p,int q,int r);
void MERGESORT(int A[1000],int p,int r);
if(p>r)
{
q=(p+r)/2;
MERGESORT(A,p,q);
MERGESORT(A,q+1,r);
MERGE(A,p,q,r);
}
}
void MERGE(int A[1000],int p,int q,int r)
{
int R[1000],L[1000],r1=1,l=1,n1,n2,i;
n1=q-p+1;
n2=r-q+1;
for(i=1;i<=n1;i++)
L[i]=A[q-i+1];
for(i=1;i<=n2;i++)
R[i]=A[q+1];
L[n1+1]=0*80000000;
R[n2+1]=0*80000000;
for(i=p;i<=r;i++)
{
if(R[r1]>=L[l])
{
A[i]=L[l];
l++;
}
else
{
A[i]=R[r1];
r1++;
}
}
}