(choice==7)
{
int count=Nodenum(T);
printf("该二叉树总共有%d个结点。\n",count);
}
else if(choice==8)
exit(0);
}while(choice<=8);
}
int menu();
void main()
{
Node *T=NULL;
int choice;
do{
choice=menu();
if(choice==1)
{
printf("二叉树的建立,以输入“0”表示结束:!\n");
printf("请输入根结点:\n");
T=CreatBTree();
printf("二叉树成功建立");
}
else if(choice==2)
{
printf("先序遍历二叉树 :\n");
preVisit(T);
}
else if(choice==3)
{
printf("中序遍历二叉树:\n");
middVisit(T);
}
else if(choice==4)
{
printf("后序遍历二叉树 :\n ");
lastVisit(T);
}
else if(choice==5)
{
int ct=10;
ct=leafnum(T);
printf(" 二叉树的叶子结点数为 : \n");
printf("%d\n",ct);
}
else if(choice==7)
{
int count=Nodenum(T);
printf("该二叉树总共有%d个结点。\n",count);
}
else if(choice==8)
exit(0);
}while(choice<=8);
}
[cpp] int menu()
{
int choice;
printf("\n");
printf(" 二叉树 \n");
printf(" ***************************\n");
printf(" * *\n");
printf(" * 主菜单 *\n");
printf(" * 1 建立二叉树 *\n");
printf(" * 2 先序遍历二叉树 *\n");
printf(" * 3 中序遍历二叉树 *\n");
printf(" * 4 后序遍历二叉树 *\n");
printf(" * 5 二叉树的叶子结点数 *\n");
printf(" * 7 二叉树的所有结点数 *\n");
printf(" * 8 退出程序运行 *\n");
printf(" ****************************\n");
printf(" 请输入您的选择(1,2,3,4,5,6,7,8): \n");
scanf("%d",&choice);
return choice;
}
int menu()
{
int choice;
printf("\n");
printf(" 二叉树 \n");
printf(" ***************************\n");
printf(" * *\n");
printf(" * 主菜单 *\n");
printf(" * 1 建立二叉树 *\n");
printf(" * 2 先序遍历二叉树 *\n");
printf(" * 3 中序遍历二叉树 *\n");
printf(" * 4 后序遍历二叉树 *\n");
printf(" * 5 二叉树的叶子结点数 *\n");
printf(" * 7 二叉树的所有结点数 *\n");
printf(" * 8 退出程序运行 *\n");
printf(" ****************************\n");
printf(" 请输入您的选择(1,2,3,4,5,6,7,8): \n");
scanf("%d",&choice);
return choice;
}