标题:求帮助 关于二叉树的建立递归遍历的问题看了好久 就是看不到拿出错喽 望有经 ...
取消只看楼主
李亚宽
Rank: 1
等 级:新手上路
帖 子:13
专家分:4
注 册:2012-2-23
 问题点数:0 回复次数:0 
求帮助 关于二叉树的建立递归遍历的问题看了好久 就是看不到拿出错喽 望有经验的人指点
#include<stdio.h>
#include<stdlib.h>
#define DATATYPE2 char

typedef struct nodel
{
    DATATYPE2 data;
    struct nodel *lchild, *rchild;

}BTCHINALR;
BTCHINALR  *createbt(BTCHINALR *bt)//二叉树的建立
{
    struct nodel *s[30];
    int j,i;
    char x;
    printf("i,x=");scanf("%d,%c",&i,&x);
    while(i!= 0 && x!='$')
    {
        bt=(BTCHINALR*)malloc(sizeof(BTCHINALR));
        bt->data=x;
        bt->lchild=NULL;
        bt->rchild=NULL;
        s[i]=bt;
        if(i!=1)
        {
            j=i/2;
            if(i%2==0)
                s[j]->lchild=bt;
            else
                s[j]->rchild=bt;
        }
        printf("i,x=");scanf("%d,%c",&i,&x);
    }
    return s[1];
}

DATATYPE2 *preorder(BTCHINALR *bt)//递归先序遍历;
{
    if(bt!=NULL)
    {
        printf("%c  ",bt->data);
        preorder(bt->lchild);
        preorder(bt->rchild);
    }
}

void main()
{
    BTCHINALR t;
    BTCHINALR *p=&t;
    createbt(p);
    preorder(p);
 //   printf("%c",p->data);

}
搜索更多相关主题的帖子: include 二叉树 
2012-03-13 15:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-363026-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.396633 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved