- 1、本文档共45页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
下载可编辑
PAGE
.专业.整理.
《数据结构》课程设计报告
计算机学院
软件工程专业
题目: 通信录查询系统(查找应用)
班级:软件102班 第11组
组长:
姓名:李伟 学号:1006550222
组员:
姓名:李呢 学号:1006550219
姓名:李强 学号:1006550221
指导老师:xxx
日期:2011 年 12月 30日
程序设计书目录
一、程序设计目标
二、问题描述
三、需求分析(说明课程设计的任务)
四、概要设计(说明课程设计中用到的抽象数据类型的定义、主程序的流程以及各程序模块之间的调用关系等)
五、详细设计(实现程序模块的具体算法)
六、软件说明书(给出软件应如何使用,使用时的注意事项)
七、源程序清单(要求400行以上,要有注释说明)
八、测试报告(调试过程中遇到的问题及解决方法,并列出测试结果,包括输入和输出)
九、课程设计总结
程序设计目标
通过本次课设进一步的了解哈希表函数及哈希表等有关概念,掌握哈希表查找的过程及方法。复习巩固大一时期学过的c语言知识。进一步加深对c语言、数据结构、离散数学等基础技能的理解和掌握。
让我们有一个既动手又动脑,独立实践的机会,可以让我们将课本上的理论知识和实际邮寄的结合起来,锻炼我们的分析解决实际问题的能力。提高我们实践编程能力。
通过本项课程设计,掌握工程软件设计的基本方法,强化上机动手编程能力,闯过理论与实践相 结合的难关!更加了解了c语言的好处和其可用性!同时增加了同学之间的团队合作精神!更加也体会到以后在工作中团队合作的重要性和必要性!
通过C语言课程设计,使学生了解高级程序设计语言的结构,掌握基本的程序设计过程和技巧,掌握基本的分析问题和利用计算机求解问题的能力,具备初步的高级语言程序设计能力。为后续各门计算机课程的学习和毕业设计打下坚实基础。
二、问题描述
设计散列表实现通讯录查找系统。
(1) 设每个记录有下列数据项:电话号码、用户名、地址;(2) 从键盘输入各记录,分别以电话号码为关键字建立散列表;(3) 采用二次探测再散列法解决冲突;(4) 查找并显示给定电话号码的记录;
(5) 通讯录信息文件保存;
(6) 要求人机界面友好,使用图形化界面;
需求分析
一.查询:用户有一个电话号码,但不知道此电话号码是谁的,则需要输入号码来查询该号码是不是此通讯录中已记录的人的号码,若是即显示该号码及姓名、所在地,若不是则显示“无记录”。进入主菜单界面,输入4,进入通讯录查询模块。输入你想要搜索通讯人的电话号码。屏幕输出所搜通讯人的先关信息。二.通讯录信息添加:若要向通讯录中添加新号码,也分两种情况:1若该通讯录是新的,既没有任何通讯记录的,则直接往里添加,需先输入姓名,随即输入号码和所在地,用于存储。2若通讯录不是空的,再添加新号码时则需在最后一个号码后面进行添加(输入姓名、电话号码及所在地),以此类推。进入主菜单,输入1,进入通讯录信息添加模块。按照要求依次输入姓名、电话号码、住址。三.通讯录信息删除:若要对通讯录中的内容进行删除:然后输入所要删除的号码进行删除删除成功。出现提示信息。按任意键回到主菜单。
概要设计
对功能键相对应的函数分别对各个函数在程序中进行定义如下:
void Menu()
void Create()
void Append()
void CreateHash()
void Find()
void Delete()
void Alter()
void List()
void Save()
void Load()
然后根据各功能键的选择主函数分别调用功能键相对应的函数来实现通讯录的查询系统。
五、详细设计
定义结构体变量
typedef struct people //记录
{
NA name;
NA tel; //关键字
NA add;
}Record;
文档评论(0)