您的位置:首页 >> 软件技术 >> 软件培训 >> 软考认证 >> 正文
软考认证 RSS
 

二叉树的中序输出求救

http://www.rdxx.com 07年09月10日 17:02 考试大 我要投稿

关键词: 输出 , 二叉树
  这个程序的思路是自己输入数字,在输入的同时,已经帮你左右顺序排好了,即左子树的数字比右子树小,是个顺序二叉树,以输入0为结素,而后一中序遍历输出,但不知道为什么,在屏幕上打引的却是左子树最小的数字,而且一直输出,请看下面程序

  #include <stdio.h>
  #include <stdlib.h>

  typedef struct no
  {
  int key;
  struct no *left,*right;
  }node,*PNOD;

  void inster(PNOD *p,int k)
  {
  PNOD ppre,pre,temp;
  ppre=*p;
  printf("current number ppre % d",ppre->key);
  if(ppre==NULL)
  {
  ppre=(node *)malloc(sizeof(node));
  
  ppre->key=k;
  ppre->left=NULL;
  ppre->right=NULL;
  *p=ppre;
  return;
  }
  while(ppre)
  {
  if(k < ppre->key)
  {
  temp=ppre;
  ppre=ppre->left;
  printf("left\n");
  }
  else if(k == ppre->key)
  {
  printf("has ...\n");
  return;
  }
  else if(k > ppre->key)
  {
  temp=ppre;
  ppre=ppre->right;
  printf("right\n");
  }
  /*printf("aaaaaaaaaaaaaaaaaa");*/
  }
  pre=(node *)malloc(sizeof(node));
  pre->key=k;
  pre->left=NULL;
  pre->right=NULL;
 

 
 
标签: 输出 , 二叉树 打印本文
 
 
  热点搜索
 
 
 



Valid XHTML 1.0 Transitional
Copyright ©2005 - 2008 Rdxx.Com,All Rights Reserved
收藏本页
收藏本站