文档介绍:数据结构实验四-树与二叉树实验四树与二叉树一、实验目的掌握树与二叉树的基本操作:建立树、遍历树、哈夫曼树等相关运算。二、实验要求包含有头文件和main函数;格式正确,语句采用缩进格式;设计子函数实现题目要求的功能;编译、连接通过,熟练使用命令键;运行结果正确,输入输出有提示,格式美观。三、实验设备、材料和工具奔腾2计算机或以上机型turboc2,win-tc四、实验内容和步骤实验内容:分析程序。完成程序编写和补充步骤:确定数据的结构;利用main函数调用各子函数;调试、分析运行结果。五、实验报告要求根据实验内容初步设计好程序,并从理论上排除错误;针对程序的健壮性准备好测试数据;结果分析中如实填写运行后的结果,记录调试过程中产生的重要问题和解决方法。六、根据实验过程填写下面内容基础部分。、中序遍历、后序遍历函数,参照教材内容,写出一个完整程序验证二叉树的建立和遍历结果。程序:#include""voidVisit(charch){ printf("%c",ch);}voidPreOrder(BiTreeroot)/*先序遍历二叉树,root为指向二叉树(或某一子树)根结点的指针*/{ if(root!=NULL) { Visit(root->data); PreOrder(root->LChild); PreOrder(root->RChild); }}voidInOrder(BiTreeroot)/*中序遍历二叉树,root为指向二叉树(或某一子树)根结点的指针*/{ if(root!=NULL) { PreOrder(root->LChild); Visit(root->data); PreOrder(root->RChild); }}voidPostOrder(BiTreeroot)/*后序遍历二叉树,root为指向二叉树(或某一子树)根结点的指针*/{ if(root!=NULL) { PreOrder(root->LChild); PreOrder(root->RChild); Visit(root->data); }}voidmain(){ BiTreeT; printf("按照扩展先序遍历输入结点():\n");CreateBiTree(&T); printf("先序遍历序列为:"); PreOrder(T); printf("\n中序遍历序列为:"); InOrder(T); printf("\n后序遍历序列为:"); PostOrder(T); printf("\n");}结果截图:,分别统计二叉树中叶节点、度为1和度为2的结点个数,并输出统计结果。程序:#include""intv0,v1,v2;voidPreOrder(BiTreeroot){ if(root!=NULL) { if(root->LChild==NULL&&root->RChild==NULL) v0++; elseif(root->LChild!=NULL&&root->RChild!=NULL) v2++; else v1++; PreOrder(root->LChild); PreOrder(root->RChild); }}voidmain(){BiTreeT;printf("按照扩展先序遍历输入结点():\n");CreateBiTree(&T);pri