数据结构实训报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

安徽机电职业技术学院《数据结构》课程实训报告校园导游程序系统姓名:倪远远小组名称:QG小组成员:倪远远沈建曦指导教师:范宏宇班级:软件3112完成日期:2012年06月16日目录第一章概述.....................................................................................................................................31.1任务描述............................................................................................................................31.2分组情况............................................................................................................................3第二章需求分析.............................................................................................................................42.1功能描述............................................................................................................................42.2关键技术............................................................................................................................4第三章概要设计.............................................................................................................................63.1核心结构体........................................................................................................................63.2系统结构(子函数).............................................................................................................6第四章详细设计.............................................................................................................................84.1最短路径查找.....................................................................................................................84.2文件存储..........................................................................................................................104.2景点信息查询..................................................................................................................11第五章系统测试...........................................................................................................................135.1测试策略..........................................................................................................................135.2测试结果..........................................................................................................................13第六章总结...................................................................................................................................16第一章概述1.1任务描述由于学习任务和为方便大一新生们对我校的景点有所了解,我两人决定协作完成校园导游程序。此程序是一个可以实现同学们对我校园区的多数景点的查询,方便新生们对学校各个场所的寻找。该校园导游系统是由校园全景浏览、景点信息查询、最短路径查询和校园美景评价几个功能组成。其中希望实现全景浏览可以俯瞰学校大轮廓,景点信息查询用作为用户介绍景点特色,最短路径查询功能可以告诉用户景点之间最短距离,最后一个功能是用户对景点的评价功能。评价功能中有管理员权限,可以进行景点的修改。程序中用到了结构体函数,顺序链表的存储和修改,图的创建等知识点。1.2分组情况本小组人员是倪远远和沈建曦,编码工作是由沈建曦为主,倪远远从旁协助。文档的编写由倪远远为主编写。编码的主框架由两人齐力修改,其中沈建曦负责路径长度的修改和学校地图的修改,本人负责图描述的修改。子函数添加的构思组要参考实训要求编写。第二章需求分析2.1功能描述系统主要有的功能:校园全景浏览、景点信息查询、最短路径查询、和校园美景评价等功能模块,其中还有管理员权限。功能介绍:1、全景浏览功能能够让用户看到我校的大致轮廓图,较为清晰地看到我校的建筑物和景点;2、景点信息查询功能是向用户介绍景点的特点,用户可以输入想要查询的景点,按回车键即可显示你想要查询的景点;3、最短路径的查询功能能够查询用户想要查询的每一个景点之间的最短路径;4、校园美景评价功能可以让每一个用户都能对学校景点进行评价,用户只要输入景点的代号即可进入评价界面,然后可以输入评价;5、管理员权限功能普通用户也可以进入,但是要修改需要获得密码权限,管理员进入权限需要输入密码登陆,它可以进行多个功能的操作,即及时添加或删除景点和对评价进行管理。即管理员权限功能主要是对校方对景点和建筑物的变化进行修改,和搜集用户对特定景点的评价,及时掌握同学们的意见和看法。2.2关键技术关键技术是:校园地图的创建、图的创建、景点列表的创建、输出函数的创建、关于修改链表的函数的创建。1、校园地图的创建规划出来了校园的大致轮廓,和学校的主要建筑物的所在位置,较为直观反映了学校建筑规模和建筑的分布情况。校园的地图是由手绘画出来的,由于线条很是繁多,绘画起来很麻烦,花了两天的时间,但是其拥有比界面寻址更加直观的视觉效果。2、图的创建是建立了学校景点的介绍和描述,被景点信息查询功能模块所调用。我们定义了边节点和景点节点,并且计算了各个景点之间的距离,在用户输入景点查询后就可以显示景点之间的最短路径。3、景点列表的创建将各个主要的景点做成了一份表格的形式输出的,比较直观,同时它还调用了景点的查询功能。景点列表也是用手绘图做出来的效果,代码量虽不大,但是视觉效果较为直观,同时在景点查询时需要调用该景点列表。4、输出函数在此程序中毫无疑问是扮演着很重要的一个角色,它实现了图的输出、景点列表的输出、主菜单的输出等等。5、关于修改链表的函数的创建。在此程序中实现了对景点的删除和添加的功能,对多个子函数进行调用,能够及时更新我校的景点评价的变化。修改函数中在管理员权限设置上的问题是:不知道应该将密码登陆代码添加到三个修改函数中的哪个修改函数中,经过多次测试,最终确定添加在modify()函数内解决可以这个问题。其中最为突出的亮点是游客用户的留言簿,游客可以对我校的各个景点进行评价并且可以浏览其他游客对各个景点的评价。同时管理员可以对游客的留言簿进行系统管理,即上述所提到的管理员功能。第三章概要设计3.1核心结构体核心结构体是顺序链表的结构体创建、顶点节点图的创建。下面是结构体的展示:1、typedefstruct{intnumber;charsight[50];此结构体是定义游客对景点的评价,结构体定义了游客可以评价的景点信息,charscrible[100];景点编号和游客信息。charname[50];}view;2、typedefstruct定义文件存储:将各个景点的信息按照线性表的方式存入文件中,{当游客想要了解想要的景点信息时,viewv[50];输入景点编号信息就可以从存储的文件里读出并显示。intlast;}SeqList;typedefstructVertexNode{intnumber;//景点的编号char*name;//景点的名称char*info;//景点的简介}VertexNode;//顶点结点的定义3.2系统结构(子函数)下面是程序中各个子函数:intxiugai()修改目录voidMap()校园地图voidCreateGraph()创建图voidOutputPlace()输出景点列表voidSearchPlace()查询景点信息voidSearchPath()查询最短路径voidShortpath(inti)计算最短路径voidOutput(intsight1,intsight2)景点输出函数voidchangesight()景点更改函数gai_number(SeqList*L,inti)景点代码调数gai_sight(SeqList*L,inti)新景点输入函数gai_scrible(SeqList*L,inti)景点描述函数gai_name(SeqList*L,inti)景点名函数change(SeqList*L)修改景点号的函数intpassword()密码设置函数SeqList*init_SeqList()链表函数SaveFile(SeqList*L)文件读入OpenFile(SeqList*L)文件读出Input(SeqList*L)链表输入Show(SeqList*L)显示文件内容intedit_menu()主菜单函数OpenFile(SeqList*L)文件读出SaveFile(SeqList*L)文件读入AddNode()添加评价目录modify()修改子函数intedit_menu()编辑菜单voidchangesight()引入编辑菜单判断输入数字0退出程序开始结束输入数字0~4进入程序1校园全景浏览2景点信息查询3最短路径查询4校园美景评价进入校园地图进入校园景点查询输入景点代码进入景点介绍进入最短路径查询显示最短路径进入校园评价系统输入景点代码输入功能选择1添加数据2修改数据3返回主菜单密码判断进入添加功能进入修改功能输入密码是3次计数否图3-1系统流程图第四章详细设计4.1最短路径查找最短路径查找,关键代码:1)最短路径的查询采用了迪杰斯

1 / 16
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功