网络101第四组课程设计报告

网络101第四组课程设计报告

ID:40975749

大小:599.00 KB

页数:24页

时间:2019-08-12

网络101第四组课程设计报告_第1页
网络101第四组课程设计报告_第2页
网络101第四组课程设计报告_第3页
网络101第四组课程设计报告_第4页
网络101第四组课程设计报告_第5页
资源描述:

《网络101第四组课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、陕西科技大学电信学院《数据结构》课程设计报告名称:“校园之星”投票系统班级:网络101组别:第四组成员:李昀隆霍杏吕佳骏赵晨胡波杨康宁指导教师:赵晓学年学期:2011~2012学年第一学期2011年12月28日摘要本课程设计题目为校园之星投票系统,这个系统可以为你心中的校园之星投票及进行评价,并可以查看学生的得票数和评价情况。另外,系统还可以生成截止某一时刻的投票情况统计清单。我们主要运用了数据结构的两块知识:一个是哈希表的相关内容,其中具体包括哈希表的创建、查找、插入、冲突处理。输入的学生拼音名字的ASCII码值之和对哈希表长取余,获得哈希地址。投票时,进行哈希查

2、找,若查找成功,则票数加一,若查找失败,则将其姓名插入到哈希表中。另一个是有关文件的创建、读写的相关内容。系统运行时会自动生成一个.txt的文件,将学生姓名及票数都记录在内,以便随时调出查看。主函数中用switch语句实现多分枝选择,来实现不同的功能。本程序的优点在于用哈希表来进行查找文件中的内容,这样调用的时候很方便,而且当面对群体较广,上榜学生较多时,查找速度会比较快。关键字:哈希表;文件;投票;查看;目录1需求分析42概要设计43详细设计44调试分析45测试结果46课设总结57参考文献5数据结构课程设计报告一.需求分析1、程序的功能校园之星投票系统主要实现了四

3、个功能:1给您心中的校园之星投票和评价2.查看某位学生的票数3.查看某位学生获得的评价4.截止目前投票情况给您心中的校园之星投票和评价功能中,实现投票和评价功能,我们运用了投票函数vote,在此函数中包括了哈希表的查找HashSearch(ht,x),在哈希表查找中地址为正,则找到这个人,投一票,地址为负时则把地址转正,增加此人,并把新的投票信息付给此人,加入到哈希表中。在投票函数中还调用了写文件函数WriteBoard(filename,x,addr),将学生的投票信息写入到txt格式的文件中。查看某位学生的票数的功能中,运用的是Dispvote函数。此函数中主要

4、调用的是哈希查找HashSearch(ht,x),实现对某位同学票数的查看。查看某位学生的评价功能中,运用的是Dispevaluate函数,其原理同DispVote函数相同。截止目前投票情况功能中,运用了函数Dissituation,其主要是通过一个循环来遍历哈希地址将所有学生的得票情况打印出来。2、输出形式给您心中的校园之星投票和评价功能中,投票人输入学生姓名和评价,即可,输出,恭喜投票成功。查看某位学生的票数和评价两个功能中,投票人输入学生的名字查找该同学,查找成功则显示该同学的相关信息,否则输出对不起,没有您要查找的学生,请检查输入是否正确,返回主菜单重新输入

5、,若输入无误,则该生还没有上榜,您可以返回主菜单为其投票哦。截止目前投票情况中会输出目前为止所有的投票信息声明中会输出程序相关的声明。3、初步测试计划小组内每个人对自己所编写的函数进行测试,成功后合并到一起进行调试。对所出现的问题集体进行讨论,然后修改再运行,直至整个程序运行成功。修改时我们主要用了printf打印法,缩小范围,查找出错地方。程序中投票人只需输入数字(1,2,3,4,5,)便可选择想要实现的功能。在case1中投票者需输入所喜欢学生的拼音名字,以及对他的评价;在case2,case3中投票人输入学生的拼音名字即可查看其得票数和他人的评价。初步测试成功

6、。二、概要设计一、子函数功能介绍1、建立文件CreateBoard:初始化所有学生的得票信息2、读取文件内容ReadBoard:生成的文件为二进制随机存取文件,文件内容为上榜学生的信息,即DataType类型的数据。文件中的记录按照哈希地址来存放。3、写文件WriteBoard:把修改后的学生信息或新上榜的学生信息写入文件中的指定位置。。4、哈希表的创建CreateHash:首先将表中各节点的关键字清空,使其地址为开放的;然后调用插入的算法将给定的数据元素序列items一次插入哈希表中。5、哈希表的插入HashInsert:首先调用查找算法在哈希表中待插入的数据元素

7、,若在表中找到待插入的数据元素,则不必插入;若在表中没找到待插入的数据元素,此时查找算法给出一个单元空闲的哈希地址,则将待插入的数据元素插入到该哈希地址对应的空闲单元中。6、哈希表的查找HashSearch:哈希表的查找过程与创建哈希表过程类似7、哈希函数HashFunc:采用除留余数法构造哈希函数8、冲突处理函数Collision:在开放定址法中,选用线性探查法处理冲突9、投票函数Vote:为学生投票分为两种情况:一是学生已经在榜上,那么给学生的票数加一;二是学生不在榜上,那么把学生插入哈希表中,并保存在文件中。10、查看学生得票情况DispVote:根据学生

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。