利用树的先序遍历序列和后序来确定二叉树中构建二叉树时函数名处错误是怎么构成的?


#include <stdio.h>
#include <stdlib.h>
#define Max 100
typedef char  DataType;
typedef struct BiNode
{
    DataType data;
    struct BiNode *lchild,*rchild;
} BiNode,*BiTree;
BiTree  Creat(char first,char mid);
int main()
{
    char first,mid;
    printf("请输入先序遍历序列:\n");
    scanf("%c",first);
    printf("请输入中序遍历序列:\n");
    scanf("%c",mid);
    char first1[Max],mid1[Max];
    for(int i=1; first!='\n'; i++)
        first1[i]=first;
    for(int i=1; mid!='\n'; i++)
        mid1[i]=mid;
    Creat(first1,mid1);
    return 0;
}
BiTree Creat(char first[],char mid[])
{
    BiTree   root;
    root=(BiTree)malloc(sizeof(BiNode));
    int i=1;
    char x[Max];
    root->data=first[1];
    for(x[i]=mid[i]; x[i]!='\n';i++)
    {
        if(x[i]=first[i])
            break;

    }
    root->lchild=Creat(first+1,mid);
    root->rchild=Creat(first+i+1,mid+1);
    return root;
}

img