#include"stdio.h"
#include"stdlib.h"
struct A//一次性输入完整的树,否则读取不会结束!!!
{
struct A *left;
struct A *right;
char data;
}*root;
void creat(struct A**);
int main()
{
creat(&root);
}
void creat(A**x)
{
*x=NULL;
char c;
c=getchar();
if(c=='*')
*x=NULL;
else
{
*x=(A*)malloc(sizeof(A));
(*x)->data=c;
creat(&((*x)->left));
creat(&((*x)->right));
}
}
如码,当我输入ABC****(即一个完整的二叉树)然后回车 时,我通过先序,中序,后序遍历都可以得到预期结果;但是当我输入ABC*** (不是完整的二叉树) 然后输入回车时,程序不会结束读取,而且随后无论我输入多少个* ,也不能让程序结束,就连ctrl+z也不能让程序结束,求大佬解答一下,难道创建二叉树必须输入完整的树吗?