数据结构通讯录的制作
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
宜春学院数学与计算机科学学院
课程设计说明书
课程名称:数据结构
课程代码:
题目:通讯录的制作
年级/专业/班: 12软件工程
****:***
学号: ********** 指导教师:李静老师
开题时间: 2014 年 5 月 12 日完成时间: 2014 年 5 月 18 日
目录
一、引言....................................................................................................... 错误!未定义书签。
二、设计目的与任务....................................................................................... 错误!未定义书签。
三、设计方案................................................................................................... 错误!未定义书签。
四、结论....................................................................................................... 错误!未定义书签。
五、致谢....................................................................................................... 错误!未定义书签。
六、参考文献................................................................................................... 错误!未定义书签。
摘要
关键字数据结构,通讯录,C语言,课程设计
数据结构课程设计对于训练学生掌握程序设计技术、使学生进一步理解和掌握课堂上所学各种基本抽象数据类型的逻辑结构、存储结构和操作实现算法,以及它们在程序中的使用方法。使学生掌握软件设计的基本内容和设计方法,并培养学生进行规范化软件设计的能力。使学生掌握使用各种计算机资料和有关参考资料,提高学生进行程序设计的基本能力。
本文是着重通过用用单链表作存储结构实现通讯录系统设计。介绍了通讯录系统设计的各个方面,对于通讯录系统设计的设计思想和设计流程也做出了全面的叙述,并且做出了通讯录系统各个功能的实现过程以及详细设计过程,在绘制简单系统的流程图的同时,力求更加清晰地表明设计思想以及对整个程序设计的规划及具体实现。
根据课程要求,以及数据结构思想,在Windows操作系统环境下,运用Visual C++ 6.0编译程序,以C语言为开发语言,最终实现通讯录系统的主要功能。
一、引言
数据结构是指同一数据元素类中各数据元素之间存在的关系。数据结构分别为逻辑结构、存储结构(物理结构)和数据的运算。数据的逻辑结构是对数据之间关系的描述,有时就把逻辑结构简称为数据结构。逻辑结构形式地定义为(K,R)(或(D,S)),其中,K是数据元素的有限集,R是K上的关系的有限集。
根据数据元素间关系的不同特性,通常有下列四类基本的结构:⑴集合结构。该结构的数据元素间的关系是“属于同一个集合”。⑵线性结构。该结构的数据元素之间存在着一对一的关系。⑶树型结构。该结构的数据元素之间存在着一对多的关系。⑷图形结构。该结构的数据元素之间存在着多对多的关系,也称网状结构。从上面所介绍的数据结构的概念中可以知道,一个数据结构有两个要素。一个是数据元素的集合,另一个是关系的集合。在形式上,数据结构通常可以采用一个二元组来表示。
数据结构的形式定义为:数据结构是一个二元组:Data_Structure=(D,R),其中,D是数据元素的有限集,R是D 上关系的有限集。线性结构的特点是数据元素之间是一种线性关系,数据元素“一个接一个的排列”。在一个线性表中数据元素的类型是相同的,或者说线性表是由同一类型的数据元素构成的线性结构。在实际问题中线性表的例子是很多的,如学生情况信息表是一个线性表:表中数据元素的类型为学生类型; 一个字符串也是一个线性表:
表中数据元素的类型为字符型,等等。
二、设计目的
为方便管理个人通讯记录,编写一个简单的通讯录管理程序。系统记录必须有姓名、地址(省市(县)、街道)、电话号码、QQ。
三、设计内容
结合数据结构和C语言的知识运用链表和文件。
本系统应完成以下几方面的功能:
①输入信息(enter()): 调用此函数用以输入数据到内存中,此过程包括建立相应的链表或相应的数组,便于读取;
②显示信息(display()):用以显示输入的数据;
③查找(search()):以姓名作为关键字查找要找的信息;
④删除信息(delete_name ()):用以删除选定的输入信息(姓名作为关键字);
⑤修改信息(change()): 用以修改选定的输入信息(姓名作为关键字);
⑥打开通讯录(load()):存储从文件中读取的字符;
⑦添加信息(inster()):用尾插法以添加信息;
⑧保存(save()):调用此函数将内存中的数据保存至磁盘中;
⑨清屏(system("cls")):执行cls命令。
本设计所采用的数据结构
制作通讯录,要求每条信息至包含姓名(name )城市(city)电话(tel)QQ号(qq),完成如下功能:输入信息;显示信息;查找以姓名作为关键字;删除信息;修改信息;存盘(将数据保存在文件中,此功能选做);清除信息。
3.1.功能模块详细设计
3.2 详细设计思想
1.输入
系统将提示用户输入新添加同学信息,插入在链表中。同学信息数据包括同学姓名、城市、电话、QQ