数据结构课程设计:通讯录的制作 

数据结构课程设计:通讯录的制作 

ID:18573291

大小:219.00 KB

页数:28页

时间:2018-09-19

数据结构课程设计:通讯录的制作 _第1页
数据结构课程设计:通讯录的制作 _第2页
数据结构课程设计:通讯录的制作 _第3页
数据结构课程设计:通讯录的制作 _第4页
数据结构课程设计:通讯录的制作 _第5页
资源描述:

《数据结构课程设计:通讯录的制作 》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、海南师范大学信息学院课程设计报告书课程名称数据结构课程设计设计题目通讯录的制作专业班级11计本(1)班学号201124010106姓名张端端指导教师蒋文娟2012年01月28目录1、设计时间……………………………………………………………32、设计目的……………………………………………………………33、设计任务……………………………………………………………34、设计内容……………………………………………………………34.1需求分析…………………………………………………………34.2总体设计………………………

2、…………………………………44.2.1本程序中用到的所有抽象数据类型的定义………………44.2.2主程序的流程………………………………………………44.3详细设计…………………………………………………………64.3.1定义的所有数据类型………………………………………64.3.2主函数………………………………………………………114.3.3函数的调用关系图…………………………………………124.4测试与分析………………………………………………………134.4.1测试………………………………………………………

3、…134.4.2分析…………………………………………………………194.5附录………………………………………………………………195、总结与展望…………………………………………………………28参考文献………………………………………………………………29281设计时间2013年11月至2013年12月2设计目的数据结构是计算机专业的核心课程,是计算机科学的算法理论基础和软件设计的技术基础。数据结构是实践性很强的课程。课程设计是加强学生实践能力的一个强有力手段。要求学生掌握数据结构的应用、算法的编写、类C语言

4、的算法转换成C程序并上机调试的基本方法。课程设计要求学生在完成程序设计的同时能够写出比较规范的设计报告。严格实施课程设计这一环节,对于学生基本程序设计素养的培养和软件工作者工作作风的训练,将起到显著的促进作用。3设计任务设计任务:针对你所在班集体中的“人名”,设计一个哈希表,使得平均查找长度不超过R,完成相应的通讯录制作过程。设计要求:(1)每个人的信息至少包括姓名,电话,地址。至少包括对通讯录的创建,添加和按姓名查找等功能。(2)假设人名为汉语拼音全拼形式,待插入哈希表的长度为你所在班级的人数。哈希函数

5、用除留余数法构造,采用链地址法或二次探测再散列法解决冲突。(3)完成菜单设计。操作有必要的提示。实现提示:假设人名最大长度不超过20,取码可以采用折叠处理,将每个字符对应的ASCII码求和。4设计内容4.1需求分析(1)程序所需要达到的功能:是通过创建哈希表,实现通讯录的创建,并通过哈希表的插入和查找使通讯录可以任意进行姓名、电话、地址的添加和相应的查找。(2)输入的形式和输入值的范围:姓名地址均使用汉语拼音全拼形式,电话使用数字,名片的添加不会超过班级总人数。28(3)输出的形式:若输出整个哈希表内容,

6、则按照哈希表的每一项所对应输入内容后,将整个名片表直接输出;若单个查找,则只会出现查找时对应的名片内容。(4)测试数据:输入的名片个数应该小于设定的电话本的记录数量(<20),输入的名片姓名的汉语拼音的长度也应小于设定的姓名的最大长度(<20),只要在规定的输入范围内输入都能得到想要的结果,若超过了规定范围,程序将结束进程。4.2总体设计4.2.1本程序中用到的所有抽象数据类型的定义1、MAXSIZE:通讯录的大小2、MAX_SIZE:通讯录中姓名、电话、地址的最大长度3、HASHSIZE:创建哈希表的容

7、量4、SUCCESS:成功标志位5、UNSUCCESS:失败标志位6、NA:存储姓名、电话、地址的通用数据结构7、record:通讯录的结构体8、status:一个int型值本程序中用来标示返回值状态9、eq方法:传入两个NA作为参数,返回一个status,作用是比较两个NA是否相同10、fold方法:传入一个NA作为参数,返回一个long,作用是将NA按照一定的算法转换成数值型,作为hashCode11、collision:处理冲突,采用二次探测再散列法解决冲突12、CreateHash:创建哈希表,以

8、电话号码为关键字,建立相应的散列表13、SearchHash:查找哈希表,在通讯录里查找电话号码关键字,若查找成功,显示信息4.2.2主程序的流程流程如下图流程图所示28程序开始i=0i=1i=2i=4i=3i=5显示菜单输入i按照指定的长度建立通讯录查找并显示给定用户名的记录添加新的用户信息显示通讯录所有用户信息查找并显示给定电话号码的记录显示你想得到的内容和菜单程序开始输入任意键显示通讯录信息并退出通讯录图一主程序的流程图

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

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

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