| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1651 人关注过本帖
标题:一个二叉树遍历的程序,编译无误可以运行,但输入数据后就崩了,求指点,谢 ...
只看楼主 加入收藏
Redeyes
Rank: 4
来 自:中国
等 级:业余侠客
威 望:1
帖 子:301
专家分:292
注 册:2015-5-13
结帖率:86%
收藏
已结贴  问题点数:20 回复次数:1 
一个二叉树遍历的程序,编译无误可以运行,但输入数据后就崩了,求指点,谢了!
代码如下:
程序代码:
#include<stdio.h>
#include<malloc.h>
#define MAX 20
typedef struct BTNode
{
    char data;
    struct BTNode*lchild; //定义左子树 
    struct BTNode*rchild; //定义右子树 
} *BiTree;
typedef struct
{
    BiTree data[MAX];
    int front,rear;
}SqQueue;

void createBiTree(BiTree *t) 
{
    char s;
    BiTree q;
    printf("\nplease input data:");
    s=getchar(); 
    getchar(); 
    if(s=='#')
    {
        *t=NULL;
        return;
    }
    q=(BiTree)malloc(sizeof(struct BTNode));
    if(q=NULL)
    {
    printf("Memory alloc failure!");
    exit(0);
    }
    q->data=s;
    *t=q;
    createBiTree(&q->lchild);   
    createBiTree(&q->rchild);   
}

void RPreorder(BiTree p)
{
    BiTree stack[MAX],q;
    int top=0,i;
    for(i=0;i<MAX;i++) stack[i]=NULL;
    q=p;
    while(q!=NULL)
    {
        printf("%c",q->data);
        if(q->rchild!=NULL) (p->rchild);
        if(q->lchild!=NULL);
        else if(top>0) q=stack[--top];
        else q=NULL;
    }
}
int main()
{
    BiTree t=NULL,copyt=NULL;
    int select;
    do
    {
        printf("请依次输入结点序列:\n");
        createBiTree(&t);
        if(t!=NULL)
            printf("二叉树创建成功!\n");
        else
            printf("二叉树未创建成功!\n");
        break;
        printf("\n先序遍历的非递归:");
        RPreorder(t);
    }
    while(select);
    return 0;
}

编译没错,但输入数据点击运行后就崩溃,不知该怎么办,谢谢各位了!
搜索更多相关主题的帖子: 二叉树 
2016-12-21 21:56
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:20 
if(q==NULL)


[fly]存在即是合理[/fly]
2016-12-22 09:54
快速回复:一个二叉树遍历的程序,编译无误可以运行,但输入数据后就崩了,求指点 ...
数据加载中...
 
   



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

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