C语言创建二叉树并遍历二叉树,求问大神我的代码哪里错了

谢谢谢谢#include<stdio.h>#include<stdlib.h>typedefstructNode{chardata;structNode*LChild;s... 谢谢谢谢
#include <stdio.h>
#include <stdlib.h>

typedef struct Node
{
char data;
struct Node *LChild;
struct Node *RChild;
}BiTNode,*BiTree;

void PreOrder(BiTree root)
{
if(root!=NULL)
{
printf("%c",root->data);
PreOrder(root->LChild);
PreOrder(root->RChild);
}
}
void InOrder(BiTree root)
{
if(root!=NULL)
{
InOrder(root->LChild);
printf("%c",root->data);
InOrder(root->RChild);
}
}
void PostOrder(BiTree root)
{
if(root!=NULL)
{
PostOrder(root->LChild);
PostOrder(root->RChild);
printf("%c",root->data);
}
}
void Creat(BiTree *bt)
{
char c;
c=getchar();
getchar();
if(c==' ')
*bt=NULL;
else
{
*bt=(BiTree)malloc(sizeof(BiTNode));
(*bt)->data=c;
Creat(&((*bt)->LChild));
Creat(&((*bt)->RChild));
}
}
int main()
{
BiTree bt;
printf("请输入您要创建的二叉树数据:\n");
Creat(&bt);
PreOrder(bt);
return 0;

}
展开
 我来答
duanggi
2019-05-20 · TA获得超过196个赞
知道小有建树答主
回答量:240
采纳率:87%
帮助的人:146万
展开全部

题目的代码没有问题啊

但是要注意创建二叉树的数据输入的格式。从给的create()函数来看,规则应该如下,每次输入一个字符+回车来创建节点,空节点用空格+回车来表示。上图我创建了一个只有三个内部节点的二叉树,a为根节点,b,c分别为左右子节点。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式