宋士杰 发表于 2015-5-25 11:14:58

请帮我看看这个二叉树哪里错了,我运行不正确吖。

#include "stdio.h"
#include "stdlib.h"
typedef struct mat
{
        int data;
        struct mat *l;
        struct mat *r;
}sbs;

void jianli(sbs *L)
{
        int i;
        printf("qin shu ru shu:\n");
        scanf("%d",&i);
        if(i!=0)
        {
                L=(sbs *)malloc(sizeof(sbs));
                L->data=i;
                jianli(L->l);
                jianli(L->r);
        }

}


void xian(sbs *L)
{

        if(L!=NULL)
        {
                printf("%d\t",L->data);
                xian(L->l);
                xian(L->r);
        }
       
}

void zhong(sbs *L)
{

        if(L!=NULL)
        {
                xian(L->l);
                printf("%d\t",L->data);
                xian(L->r);
        }
       
}
       
void hou(sbs *L)
{

        if(L!=NULL)
        {
                xian(L->l);
                xian(L->r);
                printf("%d\t",L->data);
        }
       
}


void main()
{
        sbs *L;
        jianli(L);
        printf("*************************************");
        xian(L);
        printf("*************************************");
        zhong(L);
        printf("*************************************");
        hou(L);
       
}



溯月0503 发表于 2015-5-25 11:19:08

{:1_1:}

蓝色枫叶 发表于 2015-5-28 20:09:30

应该是 sbs **L,
sbs *L   ,L只是指向结点,不是树

tiandiweicheng3 发表于 2015-7-6 17:55:07


是 sbs **L,
sbs *L   ,L只是指向结点,不是树

AndMain 发表于 2015-7-6 23:00:55

void jianli(sbs *L)入参类型错误。 应该传 树头指针的指针
页: [1]
查看完整版本: 请帮我看看这个二叉树哪里错了,我运行不正确吖。