二叉树的建立和遍历c语言的
发布网友
发布时间:2022-05-05 19:23
我来回答
共1个回答
热心网友
时间:2022-06-27 23:38
没找到哪里错了。。。。。这么多基本的语法都错了。。。
typedef 不会用建议不用
函数名一会小写一会大写
void函数竟然有返回值
该有返回值得函数没有返回值
多看看书吧。。
错误都基本上改了 内容没有细看:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
typedef struct Node
{
char data;
struct Node *Lchild;
struct Node *Rchild;
} BTnode,*BTtree;
BTnode *Create(BTnode *bt)
{
char ch;
ch=getchar();
if(ch=='.')
bt = NULL;
else
{
bt = (BTnode *)malloc(sizeof(BTnode));
bt->data=ch;
bt->Lchild=Create(bt->Lchild);
bt->Rchild=Create(bt->Rchild);
}
return bt;
}
void preorder(BTnode *N)
{
if(N!=NULL)
{
printf("%c",N->data);
preorder(N->Lchild);
preorder(N->Rchild);
}
}
void inorder(BTnode *N)
{
if(N!=NULL)
{
printf("%c",N->data);
inorder(N->Lchild);
inorder(N->Rchild);
}
}
void postorder(BTnode *N)
{
if(N!=NULL)
{
printf("%c",N->data);
postorder(N->Lchild);
postorder(N->Rchild);
}
}
int main()
{
BTnode *N;
N = Create(N);
preorder(N);
printf("\n");
inorder(N);
printf("\n");
postorder(N);
printf("\n");
system("pause");
return 0;
}