| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 532 人关注过本帖
标题:一个求二叉树路径的程序显示不了输出结果
取消只看楼主 加入收藏
win0916
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2009-10-2
收藏
 问题点数:0 回复次数:0 
一个求二叉树路径的程序显示不了输出结果
我编了一个求二叉树的根结点到所有叶子结点路径的程序,但是显示不了输出结果,请高手帮忙看下错在哪了?
#include<stdlib.h>   
#include<stdio.h>
#include<malloc.h>  
#define ERROR 0
 #define TRUE 1
 #define FALSE 0
 #define OK 1
 #define   NULL   0
 #define STACK_INIT_SIZE 100
 #define STACKINCREMENT 10   
typedef char Status ;
typedef char ElemType;
struct STACK
{
  ElemType *base;
  ElemType *top;
  int stacksize;
};

typedef struct STACK SqStack;
 typedef char DataType;   
 typedef struct Node{   
DataType data;   
struct Node *lchild,*rchild;   
}BintNode;  
 typedef BintNode *bintree;//定义二叉链表指针类型
//初始化栈
Status InitStack(SqStack *S)
{
  S->base=(ElemType *)malloc(STACK_INIT_SIZE*sizeof(ElemType));
  if(!S->base)  return ERROR;
  S->top=S->base;
  S->stacksize=STACK_INIT_SIZE;
  return OK;
}
//进栈
Status Push(SqStack *S,ElemType e)
{
 
  if(S->top - S->top>=S->stacksize)
   {

     S->base=(ElemType *) realloc(S->base,
     (S->stacksize + STACKINCREMENT) * sizeof(ElemType));
     if(!S->base) return ERROR;
     S->top=S->base+S->stacksize;
     S->stacksize+=STACKINCREMENT;
   }
   *(S->top++)=e;
  return OK;
}
//出栈
Status Pop(SqStack *S,ElemType e)
{
  if(S->top==S->base) return ERROR;
  e=*--(S->top);
  return OK;
}
 
createbintree(bintree *t)   
{
      char   ch;  
      if ((ch=getchar())=='#')
          *t=NULL;   
      else{   
      *t=(BintNode*)malloc(sizeof(BintNode));
  
      (*t)->data=ch;   
createbintree(&(*t)->lchild);  
createbintree(&(*t)->rchild);
      }   
return OK;
}
 AllPath(bintree T,SqStack *s)//求解函数
{
 if(T!=NULL)
{
 Push(s,T->data);
 if(T->lchild!=NULL&&T->rchild!=NULL)printf("%c,",T->data);
 else{
 AllPath(T->lchild,s);
 AllPath(T->rchild,s);
}
Pop(s,T->data);

 }
 
 }
main()//主函数   
{
 bintree T;
 SqStack *s;
   
 printf("please   input   nodes   of   bintree:\n");   
 createbintree(&T);
 AllPath(T,s);
}
搜索更多相关主题的帖子: 输出 结果 路径 二叉树 
2009-10-02 22:05
快速回复:一个求二叉树路径的程序显示不了输出结果
数据加载中...
 
   



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

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