[NOJ]数据结构 NO.17输出以二叉树表示的算术表达式
#include<stdio.h>
#include<stdlib.h>
typedef struct Node
{
char data;
struct Node *lchild,*rchild;
}BiTNode;
void create(BiTNode *T)
{
char c;
c=getchar();
T->data=c;
T->lchild=NULL;
T->rchild=NULL;
if(c=='#') return ;
T->lchild=(BiTNode*)malloc(sizeof(BiTNode));
create(T->lchild);
T->rchild=(BiTNode*)malloc(sizeof(BiTNode));
create(T->rchild);
}
void preorder(BiTNode *T)
{
if(T->data!='#'){
preorder(T->lchild);
printf("%c",T->data);
preorder(T->rchild);
}
}
int main()
{
BiTNode *T;
int ans;
T=(BiTNode*)malloc(sizeof(BiTNode));
create(T);
preorder(T);
return 0;
}