学生通讯录管理系统设计
1 需求分析
1.1 设计任务要求
通讯录系统主要包含以下要求:
(1)设计一个学生通讯录管理系统,每个学生数据信息包括:姓名、电话号码、qq、邮编和地址;
(2)创建学生数据类型为结构体并以磁盘文件保存; (3)能读取磁盘文件并显示输出学生的相关信息; (4)能按姓名或电话等多种方式进行学生信息查询; (5)能查询、添加、修改和删除学生通讯录。
1.2 系统功能需求分析
系统主要包含以下主要功能: (1)查询通讯录记录; (2)添加通讯录记录; (3)修改通讯录记录; (4)删除通讯录记录; (5)关闭通讯录。
第 1 页 共 25 页
学生通讯录管理系统设计
2 概要设计
2.1 数据类型
本系统中所有变量都定义为字符串型,学生通讯录数据类型定义为结构体类型。然而为了更加方便,添加了抽象数据类型类book,再私有继承了以结构体存储的学生数据。
2.2 主程序及各程序层次关系
以下是系统功能模块关系图,主要包含查询、添加、修改、删除联系人和关闭系统等功能。另外还提供了键盘式选择菜单实现功能选择。
学生通讯录查询联系人添加联系人修改联系人删除联系人关闭系统
图2.1 系统功能模块关系图
查询联系人:可以选择用姓名和电话两种方式查询
添加联系人:可以添加通讯录记录,依次输入姓名、电话、qq、邮编和地址 修改联系人:输入欲修改联系人姓名后,再依次输入修改姓名、电话、qq、邮编和地址即可完成修改
删除联系人:输入欲删除联系人的姓名后,会自动删除该联系人的记录内容 关闭系统:选择相关操作进行系统正常关闭,保存有效数据记录
第 2 页 共 25 页
学生通讯录管理系统设计
3 详细设计
3.1 实现数据类型
(1)以字符串类型定义通讯录中学生数据信息变量:
string name;//姓名 string number;//电话号码 string qq;//QQ号 string post;//邮编 string address;//地址
(2)学生通讯录数据类型定义为结构体存储: struct inf{
string name;//姓名 string address;//地址 string number;//电话号码 string post;//邮编 string qq;//QQ号 }datatype;
(3)实现类book私有继承结构体inf: class book:private inf {public:
book(){};//默认构造函数 int face();//首页
void add_person();//添加联系人 void del_person();//删除联系人 void fix();//修改信息 void find();//查询联系人
void save_new();//保存新增加的联系人 };
3.2 实现各操作模块的功能
第 3 页 共 25 页
学生通讯录管理系统设计
(1)主函数的实现: int main()
{ int choose; book b; while (choose = b.face()) { switch (choose) {case 1:
b.find();////查询联系人 break; case 2:
b.add_person();////添加联系人 break; case 3:
b.fix();////修改信息 break; case 4:
b.del_person();////删除联系人 break; case 5:
cout < (2)各操作模块函数的实现: void book::add_person()//添加联系人 { cout < 第 4 页 共 25 页 学生通讯录管理系统设计 cout<<\姓名 :\ cout <<\电话 : \ cout <<\ : \ cout <<\邮编 : \ cout <<\地址 : \ save_new(); cout < void book::del_person()//删除联系人 { ofstream outData(\ ifstream inData(\ if (!outData || !inData) { cout < cout < if ((s==name) || (s==number)) { cout < << setw(18) << \邮编\ << setw(20) << \地址 \ cout < 第 5 页 共 25 页 百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库数据结构课程设计(学生信息管理系统)在线全文阅读。
相关推荐: