全球旧事资料 分类
题目:题目:通讯录管理系统一、需求分析任务要求:任务要求:要求自学C语言中有关链表及外部文件的内容,设计出通讯录管理系统。具体要求如下:
◆建立通讯录信息,信息至少包括编号、姓名、年龄、电话、通讯地址、电子邮箱等内容;◆能够提供添加、删除和修改通讯录信息等功能;◆能够提供按照不同方式查询的功能,如按姓名或年龄、电话查询;◆能将通讯录保存在文件中;◆能够按表格方式输出通讯录信息。
系统功能需求分析:系统功能需求分析:
★1、为存储通讯录信息,需定义一个结构体类型,成员包括编号、
姓名、年龄、电话、通讯地址、电子邮箱等,并建立链表,定义该结构体类型的指针,用于指向各结点;★2、分别建立具有添加、删除、修改、查询等功能的子函数,完成相应功能,对程序实现模块化。这其中要用到对链表的删除、插入等知识。删除时用一结构体指针指向链表的第一个结点,检查该节点的值是否等于输入的要删除的学号,若相等就删除,不相等则后移指针,直至表尾。插入时也要先找到相应结点,再添加。查询功能要设置姓名、编号、地址等多种方式。★3、为实现存储功能,需用到文件的相关函数,打开文件,将添加、修改或删除的信息存入磁盘中。★4、为以表格的形式输出文件,宏定义格式化输出语句,用横线和竖线构成表格。
f二、概要设计系统总体设计框架:系统总体设计框架:对程序进行模块化,建立添加、修改、删除、查找和显示功能的子函数,各子函数中运用链表存储数据。从主函数开始执行,调用各个子函数,并运用文件相关知识将信息存入磁盘中。系统功能模块图:
创建通讯录添加信息

通讯录管理删除改记记录录
显示记录
按姓名查询
通讯录查询按编号查询
按地址查询
将信息存入文件
三、详细设计主要功能模块的算法设计思路如下:
1、添加信息函数(voidAddLi
kl)(1)定义指向结构体变量的指针;(2)移动指针,找到插入结点;(3)在要插入的结点输入信息;(4)调用保存函数,打开文件,保存输入信息。
1
f2、修改信息函数(voidModifyLi
kl)(1)定义指向结构体变量的指针;(2)用指针检验链表中是否有记录,若没记录,返回主函数;(3)根据要修改的编号查找对应结点;(4)修改信息;(5)打开文件,保存修改记录。3、删除信息函数(voidDelLi
kl)(1)定义指向结构体变量的指针;(2)用指针检验链表中是否有记录,若没记录,返回主函数;(3)根据要修改的编号查找要r
好听全球资料 返回顶部