```c++
#include
using namespace std;
struct bitree{
int data;
struct bitree* leftchild;
struct bitree* rightchild;
};
void creat(bitree *T)
{
int data;
cin>>data;
if(data==-1)
return ;
T=new bitree;
T->data=data;
cout<<"请输入"<"的左子树:";
creat(T->leftchild);
cout<<"请输入"<"的右子树:";
creat(T->rightchild);
}
void xianxu(bitree* t)
{
if(t==NULL)
return;
cout<data<<" ";
xianxu(t->leftchild);
xianxu(t->rightchild);
}
void zhongxu(bitree* t)
{
if(t==NULL)
return;
zhongxu(t->leftchild );
cout<data<<" ";
zhongxu(t->rightchild );
}
void houxu(bitree* t)
{
if(t==NULL)
return;
houxu(t->leftchild);
houxu(t->rightchild );
cout<data<<" ";
}
int main()
{
bitree *t;
creat(t);
xianxu(t);
zhongxu(t);
houxu(t);
return 0;
}
```