C语言课程设计-通讯录

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

二○一一~二○一二学年第一学期

课程设计报告书

课程名称:C语言课程设计

班级:

学号:

姓名:

指导教师:

通讯录管理系统

一、需求分析

设计要求:

(1)建立通讯录信息,信息至少包含姓名、单位、固定电话、移动手机、分类(同事、朋友、同学、家人等)、EMAIL、QQ等。

(2)输入功能:可以一次完成若干条信息的输入。

(3) 显示功能:完成全部通讯录信息的显示(一屏最多显示10条,超过十条应

能够自动分屏显示)

(4) 查找功能:可以按姓名等多种方式查找通讯信息

(5) 增加、删除、修改功能:完成通讯录信息的多种更新

二、 系统功能需求分析:

主要包含以下功能:

添加(输入):添加通讯录的信息 删除:删除通讯录记录

修改:修改通讯录记录的个人信息 显示:显示通讯录记录的个人信息 查找:查询通讯录记录的个人信息 保存:将信息保存到文件

重置:将个人的信息记录全部删除

三、 概要设计 系统功能模块图:

添加:可以添加通讯录记录,依次输入姓名、单位、固定电话、移动手机、分类

(同事、朋友、同学、家人等)、EMAIL 、QQ 后,会提示是否继续添加。

删除:可以按照姓名删除联系人信息。

修改:可以按照姓名查找到联系人,再依次输入姓名、单位、固定电话、移动手

机、分类(同事、朋友、同学、家人等)、EMAIL 、QQ 即可完成修改。

查找:可以用姓名查询个人信息。

系统主菜单

删除功能

修改功能

查找功能

显示功能

保存功能

重置功能

添加

功能

显示:可以以表格形式输出所有通讯录里的记录。

保存:将通讯录信息以TXT文件形式输出。

重置: 删除所有通讯人的信息记录。

三、详细设计

主要功能模块的算法设计思路及流程图:

程序所需的函数

1、添加联系人函数(void insert())

2、删除联系人函数(void del())

3、修改联系人函数(void modify())

4、查找联系人信息函数(void find())

5、显示联系人函数(void print())

6、保存联系人信息函数(void save())

7、重置联系人信息函数(void reset())

具体的函数功能模块与流程

1、添加联系人函数(void insert())

定义指向结构体的指针;

移动指针,使其指向最后一个节点,准备插入下一个联系人信息;

依次输入姓名、单位、固定电话、移动手机、分类(同事、朋友、同学、家人)EMAIL、QQ等。

2、删除联系人函数(void del()) 定义指向结构体的指针;

检验链表中是否有记录。若无记录,则返回; 根据姓名查找要删除的联系人;

输入联系人的姓名,删除对应结点。

开始

结束

输入姓名或者按0返回

输入联系人其它信息

姓名已存在,需重新输入

继续添加联

系人信息

3、修改联系人函数(void modify()) 定义指向结构体的指针;

检验链表中是否有记录。若无记录,则返回; 根据姓名查找要修改的联系人;

修改信息(可选择是否修改部分信息);

开始

结束

指针是否为空

按姓名查询,按0返回

输入要删除的联系人姓名,并删除。

姓名

4、查询联系人信息函数(void find()) 检验链表中是否有记录。若无记录,则返回; 根据姓名查找要联系人;

调用函数在链表中查找相应结点;

调用显示联系人函数,输出结点信息。

开始

结束

指针是否为空

按姓名查找,按0返回

依次修改

联系人各项信息,或不修改

姓名

5、显示联系人函数(void print()) 定义指向结构体的指针;

检验是否有记录。若无记录,则返回;若有记录,移动指针,依次输出记录;

开始

结束(返回该联系人结点

位置)

指针是否为空

按姓名查找,按0返回

输入姓

名,查找,并输出联系人信息

姓名

6、保存联系人信息函数(void save()) 定义指向结构体的指针;

以读写方式打开一个文本文件;

若打开错误,则返回;若成功,则逐条输出联系人信息: 关闭文件;

7、重置联系人信息函数(void reset())

开始

打开文件

结束

向文件输出联系人信息

失败

成功

指针是否为空

结束

逐条输出联系人信息

确定?

否是

删除所有联系人

结束

相关文档
最新文档