C语言课程设计:
通讯录管理系统
目录 一、 需求分析………………………………………………………2 二、 概要设计………………………………………………………2 三、 详细设计………………………………………………………3 四、 上机操作………………………………………………………14 五、 实习心得………………………………………………………19 六、 源程序 ………………………………………………………20
- 1 -
一、需求分析
具有数据的插入、修改、删除、显示和查询功能的电话簿管理程序。
(1) 数据包括:人名、工作单位、电话号码和E-MAIL地址。 (2) 可对记录中的姓名和电话号码进行修改。 (3) 可增加和删除记录。 (4) 可显示所有的保存记录。 (5) 可按人名或电话号码进行查询。 [提示]
建议采用结构体数组和文件系统实现。结构体成员包括人名、工作单位、电话号码和E-MAIL地址。
根据题目的要求程序应该采用结构体数组和文件系统实现。应该有文件的操作功能;在程序中应该包括输入、显示、删除、查询、添加、修改、保存、加载和退出的功能。
二、概要设计
根据上面的分析,可以将程序系统的设计分为如下几个模块:插入、显示、删除、查询、修改、保存和退出。
通讯录管理系统 插入 显示 删除 查询 修改 保存 退出
- 2 -
三、详细设计
1、 主函数;
主函数一般设计得比较简洁,只提供输入,处理和输出部分的函数调用。其中各功能模块用菜单方式选择。
流程图
开始 显示一系列功能选项
输入n,判断是否是0~6 N
Y 根据n的值调用各功能模块函数
【程序】
int
结束 main()
- 3 -
开始 输入要插入的记录个数n i从0到n-1调用Insert函数 Y保存调用Save函数 i!=0吗 N 返回主菜单 结束 ***********\\n\
printf(\ scanf(\
for(i=0;i scanf(\ printf(\请输入电话号码:\\n\ scanf(\ printf(\请输入Email地址:\\n\ scanf(\ } if(Save(pMan,Size+n)) { printf(\恭喜!数据插入成功! ***********\\n\ } else { printf(\操作失败,请稍后再试 !***********\\n\ } return Size+n; } 2、 显示模块 此模块为显示所有记录,流程图如下: - 4 -
通讯录管理系统数据结构课程设计



