#include <stdio.h>
#include <stdlib.h>
typedef char DataType;
typedef struct Node
{
DataType data;
struct Node *lchild,*rchild;
} BiTreeNode,*BiTree;
void PreOrderCreate(BiTree *root)
{
char a;
scanf("%c",&a);
if(a=='#')
*root=NULL;
else
{
*root=(BiTree)malloc(sizeof(BiTreeNode));
(*root)->data=a;
PreOrderCreate(&(*root)->lchild);
PreOrderCreate(&(*root)->rchild);
}
}
void Leaf(BiTree root)
{
int flag=0;
BiTree *p;
p=root;
while(p!=NULL)
{
Leaf((*p)->lchild);
Leaf((*p)->rchild);
printf("%c",(*p)->data);
if((*p)->lchild==NULL&&(*p)->rchild==NULL)
flag++;
}
}
int main()
{
BiTree root;
PreOrderCreate(root);
Leaf(root);
return 0;
}