这个程序的二行有一个
Argument list syntax error错误,帮忙改一下呀
#include<stdio.h>
void creattree(ptreenodeprt *root,int i1,int i2,int size,int pre[], int pin[])
{
int pos,llen,rlen;
if(size<0)
*root=null;
else
{*root=malloc(sizeof(ptreenode));
(*root)->data=pre[i1];
pos=find(pre[i1],pin,i2);
llen=pos-i2;
ren=size-(llen+1);
creattree(&((*root)->lchild),i1+1,i2,llen,pre,pin);
creattree(&((*root)->rchild),i1+llen+1,pos+1.elen,pre,pin);
}
}
void printtree (bitree root)
{ if(pre[i]!=null)
{
printf(root->data);
if(p->lson=null)
printf(".");
if(p->rson=null)
printf(".");
printtree(p->lchild);
printtree(p->rchild);
}
}
main()
{int pre[],pin[],i;
printf("enter array preorder($:list end):\n");
for(i=0,,i++)
scanf("%d",&pre[]);
printf("enter array inorder($:list end):\n");
for(i=0,,i++)
scanf("%d",&pin[i]);
printf("\n");
void creattree();
void printtree();
}
參考答案:参数表有问题,要将数组int pre[], int pin[]大小限定。比如int pre[22], int pin[14]。还有ptreenodeprt *root有问题,好像C语言中没有这个类型吧。