鱼C论坛

 找回密码
 立即注册
查看: 2802|回复: 0

[争议讨论] 这段代码怎么理解呢

[复制链接]
发表于 2020-12-9 16:29:16 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
#include<stdlib.h>
#define MAXCSIZE 100
typedef int TElemType;
typedef struct BitNode  {  
        TElemType data;  
        struct BitNode *lchild,*rchild;
}BitNode,*BitTree; /*二叉树的构建*/
BitTree CreateBiTree(void) {  
        BitTree bt;  
        TElemType x;  
        scanf("%d",&x);  
        if(x==-1)   
                bt=NULL;  
        else  {   
                bt=(BitTree)malloc(sizeof(BitNode));   
                bt->data=x;   
                bt->lchild=CreateBiTree();   
                bt->rchild=CreateBiTree();  
        }  return bt; } /*二叉树的中序遍历*/
void InOrderTraverse(BitTree bt) {  
        if(bt!=NULL)  {   
                InOrderTraverse(bt->lchild);   
                printf("%d",bt->data);         
                InOrderTraverse(bt->rchild);
        } } /*二叉树的后序遍历*/
void PostOrderTraverse(BitTree bt)
{  if(bt!=NULL)  
{   PostOrderTraverse(bt->lchild);
    PostOrderTraverse(bt->rchild);  
        printf("%d",bt->data);  
} } /*二叉树的先序遍历*/
void PreOrderTraverse(BitTree bt) {  
        if(bt!=NULL)  {  
                printf("%d",bt->data);  
                PreOrderTraverse(bt->lchild);                          
                PreOrderTraverse(bt->rchild);
        } }  
int main()
{   BitTree bt;  
    bt=CreateBiTree();  
        printf("\n中序遍历");  
                InOrderTraverse(bt);  
        printf("\n后序遍历");
                PostOrderTraverse(bt);
        printf("\n先序遍历");
                PreOrderTraverse(bt);
        printf("\n");
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 16:52

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表