#include"stdio.h"
#include"stdlib.h"
#define max 100
typedef struct node
{
char data;
struct node *rchild,*lchild;
} tree;
tree* create()
{
char q;
tree *t;
q=getchar();
if(q=='*')return NULL;
else
{
t=(tree*)malloc(sizeof(tree));
t->data=q;
t->lchild=create();
t->rchild=create();
return t;
}
}
void show(tree* t)
{
tree* k[max];
int i=0,j=1;
k[i]=t;
while(i!=j)
{
if(k[i]->lchild!=NULL)
{
k[j]=k[i]->lchild;j++;
}
if(k[i]->rchild!=NULL)
{
k[j]=k[i]->rchild;j++;
}
printf("%c",k[i]->data);
i++;
}
}
main()
{
tree *t;
t=create();
show(t);
#include"stdlib.h"
#define max 100
typedef struct node
{
char data;
struct node *rchild,*lchild;
} tree;
tree* create()
{
char q;
tree *t;
q=getchar();
if(q=='*')return NULL;
else
{
t=(tree*)malloc(sizeof(tree));
t->data=q;
t->lchild=create();
t->rchild=create();
return t;
}
}
void show(tree* t)
{
tree* k[max];
int i=0,j=1;
k[i]=t;
while(i!=j)
{
if(k[i]->lchild!=NULL)
{
k[j]=k[i]->lchild;j++;
}
if(k[i]->rchild!=NULL)
{
k[j]=k[i]->rchild;j++;
}
printf("%c",k[i]->data);
i++;
}
}
main()
{
tree *t;
t=create();
show(t);
}
例如输入:124**5**3**
也就是 1
2 3
4 5
输出:12345