首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

二叉树建树有关问题

2012-06-10 
二叉树建树问题建立一个二叉树的代码 有问题无法打印出来 随便写的一个C/C++ code#include stdio.h#incl

二叉树建树问题
建立一个二叉树的代码 有问题无法打印出来 随便写的一个

C/C++ code
#include <stdio.h>#include <malloc.h>typedef struct BiNode {    int data;    BiNode* lchild;    BiNode* rchild;}BiNode,BiTree;BiTree*  CreateTree(BiTree* t){    int data;    scanf("%d",&data);    if (data!=100)    {        t=new BiNode();        t->data = data;        CreateTree(t->lchild);        CreateTree(t->rchild);    }    return t;}int main(){    BiTree* t = new BiNode();    t = CreateTree(t);    printf("the lchild is %d\n",t->lchild->data);//这句不能打印    return 0;}


[解决办法]
C语言核心技术(中文版)第十二章,最后一节有一个二叉树的很NB的例子
[解决办法]
你传递个CreateTree函数的指针是一个副本,不会改变你main函数内的指针t的值。所以会出错。看下我的这个帖子吧。
http://topic.csdn.net/u/20120319/15/0751ad00-bad3-481b-9f3a-fed7409cb9cc.html
[解决办法]
CreateTree(&t->lchild);
CreateTree(&t->rchild);

[解决办法]
这个不需要

热点排行