c语言中的二叉树程序代码

来源:百度知道 编辑:UC知道 时间:2024/06/19 04:04:36
#include "stdio.h"
typedef struct btnode
{
int data;
struct btnode * lchild;
struct btnode * rchild;
}BTNODE,* BTNTREE;
void createbintree(BINTREE * t)
{
int a;
scanf("%2d",&a);
if(a==0)
* t=NULL;
else
{
*t=(BEONDE*)malloc(sizeof(BTONDE));
(*t)->data=a;
createbintree(&(*t)->lchild);
createbintree(&(*t)->rchild);
}
}
main(){
BINTREE t=NULL;
createbintree(&t);
}
怎么修改错误

lz写的程序好杂乱! 一会引用一会指针! 看着累人!

#include <stdio.h>

typedef struct btnode
{
int data;
struct btnode * lchild;
struct btnode * rchild;
}BTNODE,* BTNTREE;

void createbintree(BINTREE &t)
{
int a;
scanf("%2d",&a);

if(a==0)
t=NULL;
else
{
t = (BEONDE*)malloc(sizeof(BTONDE));

(*t)->data = a;
createbintree(&((*t)->lchild));
createbintree(&((*t)->rchild));
}

}

main()
{
BINTREE t = NULL;
createbintree(&t);
}