回 帖 发 新 帖 刷新版面

主题:这个程序 用先序输进中序输出 怎么有错啊

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#define MAX 20
#define NULL 0
typedef struct BTNode
{
char data;
struct BTNode *lchild,*rchild;
}BTNode,*BTree;
void CreateBTree(BTree *T)
{
char ch;
ch=getchar();
if(ch=='#')
(*T)=NULL;
else {(*T)=(BTree)malloc(sizeof(BTNode));
      (*T)->data=ch;
      CreateBTree(&(*T)->lchild);
      CreateBTree(&(*T)->rchild);
      }}
void Inorder(BTree T)
      {
      if(T)
      {
      InOrder(T->lchild);
      printf("%2c",T->data);
      InOrder(T->rchild);
      }}
main()
{
BTree T=NULL;
printf("\n shu shu\n");
CreateBTree(&T);
printf("\n zhongxun wei:\n");
InOrder(T);
getch();}

我用TC2。0  编译说undefined _inorder 是怎么回事

回复列表 (共2个回复)

沙发

你把main()中的getch();这句删掉.就可以

板凳

你定义的是void Inorder(BTree T)中序编历
而你调用的是   InOrder(T);
有没有发现什么不同的地方,一个字母的区别,一个是小写字母o,
而另一个是大写字母O.

我来回复

您尚未登录,请登录后再回复。点此登录或注册