二叉树输入结点值时我不知道怎样结束递归
就是在输入结点值时我不知道怎样结束递归#include<stdio.h>
#include<malloc.h>
typedef struct Binnode{//二叉树结点结构体
char data;
struct Binnode *lchild;
struct Binnode *rchild;
}*Bintree;
//typedef Binnode *Bintree ;
Bintree Creat_Bintree(Bintree *root)
{
char ch;
if((ch=getchar())==' ')
{
*root=NULL;
}
else
{
*root=(Binnode*)malloc(sizeof(Binnode));
(*root)->data=ch;
Creat_Bintree(&(*root)->lchild);
Creat_Bintree(&(*root)->rchild);
}
return *root;
}
void Preorder1(Bintree t)
{
if(t!=NULL)
{
printf("%c",t->data);
Preorder1(t->lchild);
Preorder1(t->rchild);
}
}
void main()
{
Bintree TREE;
printf("建立二叉树:");
Creat_Bintree(&TREE);
Preorder1(TREE);
}