#include <stdio.h>
typedef struct tnode{
char data;
struct tnode *right,*left;
}tnode,*tnodeptr;
void create(tnodeptr *t)//t为指针的指针
{
char ch;
scanf("%c",&ch);
if(ch==' ')(*t)=NULL;
else{
(*t) = (tnodeptr)malloc(sizeof(tnode));//需要在函数里改变指针值
if(!(*t))exit(1);
(*t)->data = ch;
create(&(*t)->left);
create(&(*t)->right);
}
}
int preorder(tnodeptr t)
{
if(t!=NULL){
preorder(t->left);
preorder(t->right);
printf("%c ",t->data);
}
return 0;
}
int main()
{
tnodeptr t;
create(&t);
preorder(t);
system("pause");
return 0;
}