#include <iostream>
using namespace std;
//链式二叉树节点数据类型定义
typedef char ElemType;
typedef struct BinTreeNode
{
ElemType data;
struct BinTreeNode*lchild;
struct BinTreeNode*rchild;
}BinTreeNode;
//创建二叉树
void CreateBiTree(BiTree &T);
//先序遍历
Status PreOrderTraverse(BiTree T);
//中序遍历
Status InOrderTraverse(BiTree T);
int NodeCount(BiTree T){
int main()
{
cout<<"Hello 二叉树的应用!"<< endl;
BiNode *T;
cout<<endl<<"创建二叉树"<<endl;
CreateBiTree(T);
cout<<endl<<"先序遍历结果"<<endl;
PreOrderTraverse(T);
cout<<endl<<"中序遍历结果"<<endl;
InOrderTraverse(T);
cout<<endl<<"结点总数"<<endl;
int number =NodeCount(T);
cout<<number;
return 0;
}
void CreateBiTree (BiTree &T)
{
char ch;
cin>>ch;
if(ch** '#') //输入‘#’代表空树
T=NULL
else
{
T=new BiNode;
T->data=ch; //生成根节点
CreateBiTree(T->lchild);//递归创建左子树
CreateBiTree(T->rchild);//递归创建右子树
}
}
void PreOrderTraverse(BiTree T){
if(T=NULL)
return 1;
else{
cout<<T->data;
PreOrderTraverse(T->lchild);
PreOrderTraverse(T->rchild);
}
return 0;
}
Status InOrderTraverse(BiTree T){
if(T==NULL)
return 1; //空二叉树
else{
InOrderTraverse(T->lchild); //递归遍历左子树
cout<<T->data; //访问根结点
InOrderTraverse(T->rchild); //递归遍历右子树
}
return 0;
}
Status PostOrder(BiTree T)
{
if(T=NULL)
return 1;
else{
PostOrderTraverse(T->lchild);
PostOrderTraverse(T->rchild);
cout << T->data << endl;
}
return 0;
}
想用以上代码实现图片的运行 但是老是报错不知道该如何更改求大神指点