通讯录管理系统的设计与实现

通讯录管理系统的设计与实现

ID:6655693

大小:132.00 KB

页数:23页

时间:2018-01-21

通讯录管理系统的设计与实现_第1页
通讯录管理系统的设计与实现_第2页
通讯录管理系统的设计与实现_第3页
通讯录管理系统的设计与实现_第4页
通讯录管理系统的设计与实现_第5页
通讯录管理系统的设计与实现_第6页
通讯录管理系统的设计与实现_第7页
通讯录管理系统的设计与实现_第8页
通讯录管理系统的设计与实现_第9页
通讯录管理系统的设计与实现_第10页
资源描述:

《通讯录管理系统的设计与实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、湖南工业大学《数据结构》课程设计报告题 目通讯录管理系统的设计与实现姓名:学号:专业:班级:指导教师:职称:理学院2011年6月目录1系统简介11.1设计目的与要求11.1.1设计目的11.1.2设计要求12总体设计12.1系统功能概要12.2数据结构及原理23详细设计33.1各模块调用关系33.2插入信息43.3显示信息43.4查询信息43.5其他功能54系统测试65总结11附录11课程设计作品验收表题目参与人员姓名班级学号设计任务与要求:◆建立通讯录信息,信息包括姓名、街道、城市、邮编、电

2、话、国家等内容;◆能够输出通讯录信息。◆能够提供添加、删除和查询通讯录信息等功能;◆提供至少两种查询通讯录信息的方法;◆能将通讯录保存在文件中。作品完成情况:◆成功建立包括姓名、街道、城市、邮编、电话、国家等内容的通讯录系统;◆提供了输出通讯录信息的方法;◆提供了添加、删除和查询通讯录信息等功能;◆提供了按姓名查找和按城市查找通讯信息的功能;◆完成了将通讯录保存在文件中的功能。验收情况:验收教师签名:___________      年月日注:1.除“验收情况”栏外,其余各栏均由学生在作品验收前填写。2.“验收情况”栏由验收小组按实际验收的情况如实填写。通讯录管理系统

3、的设计与实现1系统简介1.1设计目的与要求1.1.1设计目的随着信息社会的高速发展,人与人之间的联系越来越频繁,通讯方式越来越多样化,如何保证与朋友、同学、同事、领导、亲戚等之间的联系,并能方便快捷的查找、记录、修改其相关通讯信息。仅靠以前单独的手工记录已远远不能满足当前的需要。开发一个通讯录管理系统,借助计算机可以方便、快捷、灵活的管理个人的朋友及相关人员的通讯信息,了解友人相关信息,帮助与友人保持联络。所以设计一个通讯录管理系统管理各人的通讯信息是是非必要的。1.1.2设计要求建立通讯录信息,实现基础数据信息的录入,信息包括姓名、街道、城市、邮编、电话、国家等内容

4、。实现查看信息的功能,能够输出全部的通讯录信息。实现通讯录管理系统的维护,能够提供包括添加通讯信息、删除通讯信息和查询通讯录信息等功能。提供至少两种查询通讯录信息的方法,便于用户查找通讯信息。能将通讯录保存在文件中。2总体设计2.1系统功能概要通讯录管理系统是基于双向循环链表设计而成的信息管理系统。该系统通过对程序进行模块化,建立添加、显示、查找和删除功能的函数,各函数中运用双向循环链表存储数据。从主函数开始执行,调用各函数,并运用文件相关知识将信息存入磁盘中。20系统功能模块图如图1:创建通讯录通讯录管理通讯录查询添加信息删除记录显示记录将信息存入文件按姓名查询图1

5、系统功能模块图2.2数据结构及原理(1)为存储通讯录信息,需定义一个结构体类型,成员包括姓名、街道、城市、邮编、电话、国家等,并建立双向循环链表,定义该结构体类型的指针,用于指向各结点。结构体定义如下:typedefstructmessage{charname[15];charstreet[30];charcity[20];chareip[20];charstate[20];chartelephone[20];}dmessage;/*建立通讯录信息结构体;*/typedefstructdlnode20{dmessagedata;structdlnode*prior;/

6、/定义结点的前驱指针structdlnode*next;//定义结点的后继指针}dnode;/*建立双向链表结构体;*/(2)以列表的形式输出文件。(3)分别建立具有添加、删除、修改、查询等功能的子函数,完成相应功能,对程序实现模块化。这其中要用到对链表的删除、插入等知识。删除时用一结构体指针指向链表的第一个结点,检查该节点的值是否等于输入的要删除的信息,若相等就删除,不相等则后移指针,直至表尾。插入时也要先找到相应结点,再添加。查询功能要设置姓名、城市等多种方式。(4)为实现存储功能,需用到文件的相关函数,打开文件,将添加、修改或删除的信息存入磁盘中。3详细设计3.

7、1各模块调用关系各模块调用关系图如图2:插入信息删除信息显示信息按姓名查询存盘查询信息退出系统图2各模块调用关系图203.2插入信息插入信息功能(voidenter(void))是将各联系人的姓名、街道、城市、邮编、电话、国家等信息插入双向循环链表中。流程图如图3:定义指针,为指针分配存储空间输入数据将节点p插入链表,将指针rear移至结点p判断是否继续插入信息是否返回第一步返回主菜单图3插入信息3.3显示信息显示信息(voidprintall(dnode*head))功能是将各人的姓名、街道、城市、邮编、电话、国家等信息全部以列表形式显示出来。流程

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

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

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