主题:[讨论]各位大侠帮我看看程序哪里出错了
#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>
typedef struct bitnod
{
char data;
struct bitnod *lchild;
struct bitnod *rchild;
}bitree;
void creatbitree(bitree *b);
void preorder(bitree *b);
void main()
{
bitree *c;
creatbitree(c);
preorder(c);
}
void preorder(bitree *c)
{
if(c!=NULL)
{
printf("%c",c->data);
if(c->lchild!=NULL)
preorder(c->lchild);
if(c->rchild!=NULL)
preorder(c->rchild);
}
}
void creatbitree(bitree *c)
{
char ch;
ch=getchar();
if(ch=='#')
c=NULL;
else
{
c=(bitree *)malloc(sizeof(bitree));
c->data=ch;//生成树节点
creatbitree(c->lchild);
creatbitree(c->rchild);
}
return;//退回上层递归用
}
#include<malloc.h>
#include<stdlib.h>
typedef struct bitnod
{
char data;
struct bitnod *lchild;
struct bitnod *rchild;
}bitree;
void creatbitree(bitree *b);
void preorder(bitree *b);
void main()
{
bitree *c;
creatbitree(c);
preorder(c);
}
void preorder(bitree *c)
{
if(c!=NULL)
{
printf("%c",c->data);
if(c->lchild!=NULL)
preorder(c->lchild);
if(c->rchild!=NULL)
preorder(c->rchild);
}
}
void creatbitree(bitree *c)
{
char ch;
ch=getchar();
if(ch=='#')
c=NULL;
else
{
c=(bitree *)malloc(sizeof(bitree));
c->data=ch;//生成树节点
creatbitree(c->lchild);
creatbitree(c->rchild);
}
return;//退回上层递归用
}