二叉树 - 12. 分枝结点数 (10分)
请编写函数,统计二叉树的分枝结点(非终端结点)个数。
函数原型
// 分枝结点数
int BinTreeNumBranch(const TNODE *root);
说明:root
为二叉树或它的子树的根指针,函数值为二叉树的非终端结点数。
在头文件 BinTree.h 添加函数声明。
BinTree.h
......
// 分枝结点数
int BinTreeNumBranch(const TNODE *root);
......
在程序文件 BinTree.c 中添加函数的定义。
BinTree.c
......
/* 你提交的代码将被嵌在这里 */
裁判程序
main.c
#include <stdio.h>
#include "BinTree.h"
int main()
{
TNODE *r;
BinTreeCreate(&r);
BinTreeInput(&r);
printf("%d\n", BinTreeNumBranch(r));
BinTreeDestroy(&r);
return 0;
}
输入样例
EIBJ##H###DF#A##G#C##
输出样例
6</