高手帮忙看一下这个二叉树程序

来源:百度知道 编辑:UC知道 时间:2024/06/18 13:08:13
#include<stdio.h>
#include<stdlib.h>
typedef struct Binode
{
char data;
struct Binode *l;
struct Binode *r;
}Binode,*Bitree;
int CreateBitree(Bitree &t)
{
char ch;
scanf("%c",&ch);
if(ch==' ')t=NULL;
else
{
if(!(t=(Binode *)malloc(sizeof(Binode))))
exit(0);
t=(Binode *)malloc(sizeof(Binode));
t->data=ch;
CreateBitree(t->l);
CreateBitree(t->r);
}
return 1;
}

int Visit(char e)
{
printf("%c",e);
return 1;
}
int Visit2(Bitree &t){
Bitree p;
p=t->l; t->l=t->r; t->r=p;
return 1;
}

int PreorderTraverse(Bitree t , int(* Visit)(char e))
{
if (t)
{
if (Visit(t->data))
if (PreorderTraverse(t->l, Visit))
if (Preord

嘿嘿,会停止,等到你的硬盘空间用完时就停啦 。。。
if(!(t=(Binode *)malloc(sizeof(Binode))))
exit(0);

创建 树时要么 预置下树的大小,要么设定个 结束符比较好

那种改法没道理。。。