#include <stdio.h>
#include "malloc.h"
typedef char ElemType;
typedef struct BiTNode {
ElemType data;
struct BiTNode *lchild, *rchlid;
} BiTNode, *BiTree;
void CreateBiTree(BiTree &T) {
char c;
scanf("%c", &c);
if (' ' == c) {
T = NULL;
} else {
T = (BiTNode *) malloc(sizeof(BiTNode));
T->data = c;
CreateBiTree(T->lchild);
CreateBiTree(T->rchlid);
}
}
void visit(char c ,int level){
printf("%c位于 %d 层\n",c,level);
}
//遍历二叉树 先序遍历
void PreOrderTraverse(BiTree T, int level) {
if (T) {
visit(T->data,level);
PreOrderTraverse(T->lchild,level+1);
PreOrderTraverse(T->rchlid,level+1);
}
}
int main(){
int level =1;
BiTree T = NULL;
CreateBiTree(T);
PreOrderTraverse(T,level);
return 0;
}
//AB空格D空格*2CE空格*3