好多不明白的小迷糊 2022-01-29 21:19 采纳率: 56%
浏览 14
已结题

我想建立一个二叉树再中序输出,为什么不行

#include"stdio.h"
typedef struct tree
{
    int date;
    struct tree *lchild;
    struct tree *rchild;
}tree;
void createtree(tree *t)
{
    int num;
    scanf("%d",&num);
    if(num==0)
    t=NULL;
    else
    {
        t=new tree;
        t->date=num;
        createtree(t->lchild);
        createtree(t->rchild);
    }
        
}
void midprintf(tree *t)
{
     if(t==NULL)
     ;
     else
     {  midprintf(t->lchild);
         printf("%d\t",t->date);
         midprintf(t->rchild );
         }    
}
int main()
{
   tree *t=NULL;
   printf("请输入整数\n");
   createtree(t);
   midprintf(t);
}

  • 写回答

1条回答 默认 最新

  • SmallAntJ 2022-01-29 21:54
    关注
    void createtree(tree *t);
    

    函数里面的t是形参,没有改变传入的指针值,所以一直是一个空树。可以改成

    tree* createtree(tree *t);
    

    把创建的结点指针返回

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 2月7日
  • 已采纳回答 1月30日
  • 创建了问题 1月29日

悬赏问题

  • ¥15 关于react-hook组件用函数控制是否渲染的及时性问题。
  • ¥50 Linux下的软件,要做模块化拆分。进程间通信是否有开源框架可以借用?
  • ¥100 修改原有的MYSQL存储代码,在最右边添加多列数据
  • ¥20 Open Interpreter 使用时报错: still has pending operation at deallocation, the process may crash
  • ¥15 qt中链接动态链接库,调用其中的函数,该函数的参数需要传入回调函数,自己创建的回调函数无法作为参数传递进去
  • ¥15 如何把api接口返回的json数据自动计算分页自动执行并写入mysql数据库。
  • ¥15 matlab svm二分类代码问题
  • ¥40 求一款能支持ios15以上的屏蔽越狱插件。比较好用的
  • ¥15 C++ QT对比内存字符(形式不定)
  • ¥30 C++第三方库libiconv 远程安装协助