c++问题 error C2084: function 'void __cdecl inorder(struct BiTNode *)' already has a body

#include<stdio.h>#include<stdlib.h>typedefintEtype;typedefstructBiTNode/*树结点结构*/{Etyp... # include <stdio.h>
# include <stdlib.h>
typedef int Etype;
typedef struct BiTNode /* 树结点结构 */
{ Etype data;
struct BiTNode *lch,*rch;
}BiTNode;
/* 函数原形声明 */
BiTNode *creat_bt1();
BiTNode *creat_bt2();
void inorder(BiTNode *p);
void numb(BiTNode *p);
BiTNode *t; int n,n0,n1,n2;
void main()
。。。。 省略

/* 模仿先序递归遍历方法,建立二叉树 */
BiTNode *creat_bt2()
{ BiTNode *t;int e;
printf("\n data="); scanf("%d",&e);
if(e==0) t=NULL; /* 对于0值,不分配新结点 */
else { t=(BiTNode *)malloc(sizeof(BiTNode));
t->data=e;
t->lch=creat_bt2(); /* 左孩子获得新指针值 */
t->rch=creat_bt2(); /* 右孩子获得新指针值 */
}
return(t);
} /* creat_bt2 */
/* 中序递归遍历二叉树 */
void inorder(BiTNode *p)
{ if (p) { inorder(p->lch);
printf("%3d",p->data);
inorder(p->rch);
}
} /* inorder */
/* 利用中序递归遍历二叉树的方法,计算树中结点个数 */
/* 读者可以试着运用先序或后序递归遍历二叉树方法重新编写这一段函数 */
void inorder(BiTNode *p)
{ if (p) { inorder(p->lch);
{ printf("%3d",p->data);
n++;
if(p->lch==NULL && p->lch==NULL) n0++;
if((p->lch==NULL && p->lch!=NULL)||
(p->lch!=NULL && p->lch==NULL)) n1++;
if(p->lch!=NULL && p->lch!=NULL) n2++;
} /* 把访问的功能扩大了 */
inorder(p->rch);
}}

inorder函数应该怎么改?
展开
 我来答
百度网友44b2127
2014-12-22 · TA获得超过855个赞
知道小有建树答主
回答量:630
采纳率:72%
帮助的人:233万
展开全部
这个错误是说你定义了两个相同的inorder函数,删除一个就是了
oowood
2014-12-22 · TA获得超过1781个赞
知道大有可为答主
回答量:2196
采纳率:81%
帮助的人:1238万
展开全部
把它 void inorder(BiTNode *p);改成

external void inorder(BiTNode *p);
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式