永发信息网

请大家来帮我将这个C程序改成C++,谢谢了。

答案:3  悬赏:30  手机版
解决时间 2021-04-21 03:06
  • 提问者网友:溺爱和你
  • 2021-04-20 08:41

#include <stdio.h>

#include <stdlib.h>

#define MAX 20

#define NULL 0

typedef char TElemType;

typedef int Status;

typedef struct BiTNode{

TElemType data;

struct BiTNode *lchild,*rchild;

}BiTNode,*BiTree;

Status CreateBiTree(BiTree *T)

{//输入二叉树的先序遍历序列,创建二叉链表

char ch;

ch=getchar();

if (ch=='&') (*T)=NULL;

else {

(*T)=(BiTree) malloc(sizeof(BiTNode));

(*T)->data=ch;

CreateBiTree(&(*T)->lchild) ;

CreateBiTree(&(*T)->rchild) ;

}//end of if

return 1;

}//end of creatbintree

void PreOrder(BiTree T)

{//对二叉树进行先序遍历

if (T) {

printf("%c",T->data);

PreOrder(T->lchild);

PreOrder(T->rchild);

}//end of if

}//end of preorder

void Cenview(BiTree T)

{////对二叉树进行中序遍历

if (T) {

Cenview(T->lchild);

printf("%c",T->data);

Cenview(T->rchild);

}//end of if

}//end of inorder

void Lview(BiTree T)

{//对二叉树进行后序遍历

if (T) {

Lview(T->lchild);

Lview(T->rchild);

printf("%c",T->data);

}//end of if

}//end of postorder

main(){

BiTree T=NULL;

printf("please input nodes of bintree:\n");

CreateBiTree(&T);

printf("\nThe preorder is:\n");

PreOrder(T);

printf("\nThe inorder is:\n");

Cenview(T);

printf("\nThe postorder is:\n");

Lview(T);

printf("\n");

return 0;

}

最佳答案
  • 五星知识达人网友:几近狂妄
  • 2021-04-20 08:56
#include <iostream>#include <stdlib.h>using namespace std;#define MAX 20#define NULL 0typedef char TElemType;typedef int Status;typedef struct BiTNode{TElemType data;struct BiTNode *lchild,*rchild;}BiTNode,*BiTree;

Status CreateBiTree(BiTree *T){//输入二叉树的先序遍历序列,创建二叉链表 char ch; ch=getchar(); if (ch=='&') (*T)=NULL; else { (*T)=new(BiTNode); (*T)->data=ch; CreateBiTree(&(*T)->lchild) ; CreateBiTree(&(*T)->rchild) ; }//end of if return 1;}//end of creatbintree

void PreOrder(BiTree T){//对二叉树进行先序遍历 if (T) { cout<<T->data; PreOrder(T->lchild); PreOrder(T->rchild); }//end of if}//end of preorder
void Cenview(BiTree T){////对二叉树进行中序遍历 if (T) { Cenview(T->lchild); cout<<T->data; Cenview(T->rchild); }//end of if}//end of inorder
void Lview(BiTree T){//对二叉树进行后序遍历 if (T) { Lview(T->lchild); Lview(T->rchild); cout<<T->data; }//end of if}//end of postorderint main(){ BiTree T=NULL; cout<<"please input nodes of bintree:\n"; CreateBiTree(&T); cout<<"\nThe preorder is:\n"; PreOrder(T); cout<<"\nThe inorder is:\n"; Cenview(T); cout<<"\nThe postorder is:\n"; Lview(T); cout<<endl; return 0;}
全部回答
  • 1楼网友:走死在岁月里
  • 2021-04-20 11:11

你娃娃上课在搞撒子明堂,不是改了几遍了吗

  • 2楼网友:渡鹤影
  • 2021-04-20 10:21
数据结构学起好难
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯