永发信息网

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

答案:3  悬赏:30  手机版
解决时间 2021-04-21 03:06

#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;

}

最佳答案
#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;}
全部回答

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

数据结构学起好难
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
为什么我用cd-key码发送礼包 丝路英雄里没有
父母三十岁生日祝福语,我的姪儿三十岁生日祝
黑执事官方出了几个番外篇 在哪里能看
杰奎琳这个地址在什么地方,我要处理点事
英雄岛里的问问怎么不能用了?????
佳能ixus200和佳能ixus200IS有什么区别吗?
DNF怎么在路口摆摊啊
“一个三位数,十位上的数字是百位上的数的两
山西考生考多少才能被西藏大学录取!
广安农产品批发市场在哪里啊,我有事要去这个
国际贸易是干吗的
还是游戏问道问题
实验室制取二氧化碳关于器材装置的问题、
急求:仙3movie文件(不要外传,格式正确)
iPhone手机通讯录里每个人都有两个名字,号码
推荐资讯
现在高中当兵的待遇如何?
童星园艺术幼儿园怎么去啊,有知道地址的么
3力1敏加点,25级力量多少,敏捷多少?30,40
寻仙的图标是长期亮的吗?
发烧玩电脑有没有害处?
关于win7个性化设置的问题
怎么卸载 动态英文+数字
新余市第十六中学在哪里?
西安昨天地震了吗?几点钟?
阿法利亚深渊需要打什么图收集灵魂球?
传奇外传怎么赚钱啊?
霸气军团口号,帮忙想个酱油军团口号,名字,
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?