数据结构实验7实验报告.docx
暨南大学本科实验报告专用纸课程名称数据结构实验成绩评定实验工程名称习题6.51指导教师孙世良实脸工程编号实险7实验工程类型实脸地点实脸楼三楼机房学生姓名林炜哲学号2013053005学院电气信息学院系专业软件工程实脸时间年_月_日_午_月_日_午温度湿度(一)实验目的熟悉和理解二叉树的结构特性;熟悉二叉树的各种存储结构的特点及适用范围;掌握遍历二叉树的各种操作及其实现方式。(一)实验内容和要求编写一个算法,输出以二叉树表示的算术表达式,假设该表达式中含有括号,那么应该在输出时添上。(三)主要仪器设备实验环境:MicrosoftVisualStudio2012(四)源程序ttinclude<stdio.h>include<stdlib.h>typedefstructbitnodcchardata;structbitnodc*lchild,*rchild;bitnode,*bitree;voidcreate(bitree&T)chart;t=getchar();if(t=三,)T=NULL;elseif(!(T=(bitnodc*)malIoc(sizeof(bitnode)exit(O);T->data=t;create(T->lchiId);create(T->rchiId);)voidmiddle_order(bitree&Nodc)if(Node!=NULL)if(Node->data=三,*,Node->data=三,)&&(Node->lchild->data=,+,Node->lchild->data=三,->)Printf("(");middle_order(Node->lchiId);if(Node->data=,*,Node->data=三,)&&(Node->lchild->data=,+,Node->lchild->data=三,->)Printf();Printf("%c”,Node->data);if(Node->data=j*,|Node->data=,,)&&(Node->rchild->data=,+,Node->rchild->data=,->)Printf("(");middle_order(Node->rchiId);if(Node->data=,*,|Node->data=,,)&&(Node->rchild->data=,+,Node->rchild->data=-,)Printf(")”);)intmainO(bitreey;Printf(以先序遍历的方式输入一:叉树:);create(y);Printf("输出表达式:");middle_order(y);returnO;)(五)数据调试C:Wmdowssystem32cmd.exe以先序遍历的方式输入二叉树:Ta*b-Cd/e输出美铁式:ab*<c-d>-eF请按任意键继续(六)实验结果分析与总结以先序遍历的方式输入二叉树:-+a*b-ed/ef由此得到表达式:a+b*(c-d)-ef验证可得表达式正确。程序正常运行。总结:了解了二叉树的存储结构以及遍历二叉树的操作。