【正确答案】(1)计算结点总数
int CountNode(BinTree*root)
{
intnum1,num2;
if(root==Null)return(0);
else if(root->lchild==Null&&rooot->rchild==Null)
return(1);
else
{
num 1=CountNode(root->lchild);
num 2=CountNode(root->rchild);
return(num1+num2+!);
}
}
(2)计算叶子总数
int CountLeafs(BinTree*root)
{
intnum1,num2;
if(roo==Null)return(0);
else if(mot->lchild==Null&&root->rchild==Null)
return(1);
else
{
num1=CountLeafs(root->lchild);
num2=CountLeafs(root->rchild);
return(num1+num2);
}
}
【答案解析】