马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
下面是关于二叉树的初始化,创建以及输出,出了些问题麻烦帮忙调试一下#include<stdio.h>
#include<stdlib.h>
#define OK 1
#define ERROR 0
typedef int status;
typedef char telemtype;
typedef struct BitNode{
telemtype date;
struct BitNode *lchild,*rchild;
}BitNode,*BiTree;
void initbitree(BiTree &t)
{
t=(BitNode*)malloc(sizeof(BitNode));
t->date=NULL;
t->lchild=NULL;
t->rchild=NULL;
}
status createbitree(BiTree &t)
{
char e;
scanf("%c",&e);
if(e=='#') t->date=NULL;
else{
t=(BitNode*)malloc(sizeof(BitNode));
t->date=e;
createbitree(t->lchild);
createbitree(t->rchild);
}
return OK;
}
void PreOrder(BiTree t)
{
if(t){
printf("%c",t->date);
PreOrder(t->lchild);
PreOrder(t->rchild);
}
}
int main()
{
BiTree t;
int m=0;
initbitree(t);
while(m!=6){
printf("1.建立一个二叉树 2.复制二叉树 3.判断相等 4.求叶子结点个数 5.求二叉树深度 6.退出\n");
printf("请输入你想进行的操作:");
scanf("%d",&m);
switch(m)
{
case 1: createbitree(t);
printf("该二叉树为:");
PreOrder(t);
break;
}
}
}
|