被自己蠢哭了...
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
using namespace std;
typedef struct node
{
char data;
struct node *L_Kid,*R_Kid;
}Tree;
void initTree(Tree *&T)
{
char str;
cin>>str;
if(str!='#')
{
T=(Tree *)malloc(sizeof(Tree));
T->data=str;
initTree(T->L_Kid);
initTree(T->R_Kid);
}
else
{
T=NULL;
return;
}
}
void Traverse(Tree *T,char tar)
{
if(T!=NULL)
{
if(T->data==tar)
{
if(T->L_Kid==NULL)
cout<<"L:#,";
else
cout<<"L:"<<T->L_Kid->data<<",";
if(T->R_Kid==NULL)
cout<<"R:#";
else
cout<<"R:"<<T->R_Kid->data;
}
Traverse(T->L_Kid,tar);
Traverse(T->R_Kid,tar);
}
}
int main()
{
Tree *T;
initTree(T);
getchar();
char tar;
cin>>tar;
Traverse(T,tar);
return 0;
}