C++通讯录课程设计报告

上传人:索**** 文档编号:142252290 上传时间:2020-08-18 格式:PDF 页数:24 大小:919.89KB
返回 下载 相关 举报
C++通讯录课程设计报告_第1页
第1页 / 共24页
C++通讯录课程设计报告_第2页
第2页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《C++通讯录课程设计报告》由会员分享,可在线阅读,更多相关《C++通讯录课程设计报告(24页珍藏版)》请在金锄头文库上搜索。

1、1 C+ 程 序 设 计 课 程 报 告 课题: 简单通讯录系统的设计 专业班级 : 信管 10101 班 学号: 0107 姓名: 易帅龙 指导教师 : 雷红艳 1 2 页 目录 一、设计系统的目的意 义3 二、系统需求、功能分 析3 1:系统需 求3 2:功能分 析3-4 3:系统结构 图4 4:流程 图5 三、数据结构 表6 四、数据测试 表6 五、 运行 和 调试 (各 个功 能调 试运行 结 果)6-12 1、主界面系统运 行6-7 2、添加联系 人7 3、查询联系 3 人8-9 4、修改联系 人 10 5、删除联系 人 11 6、设计人员信 息 11 7、系统运行结 束 12 六、

2、课程设计的心 得 12 七、参考书 目: 12 八、附录:源代 码13-21 九、评阅意见及评阅成 绩21 2 页 一、设计系统的目的意义 1、设计系统的目的 设计这个系统的目的是为了设计一个能够便捷使用的电子通讯录,能够 方便的存储信息, 可以将这个系统应用到手机或者其他电子设备中,方便的 存储联系人,为方便查找联系人的各种信息提供方便。 2、设计系统的意义 4 电子通讯录系统没有使用纸张等,做到了环保,符合当今环保理念这 个系统使用户能够方便快捷的使用存储和查找等优势功能,且具有较高的 安全性,能够有效保护用户联系人资料。 二、系统需求及功能分析 系统需求 1、需要录入联系人到通讯录中;

3、2、能够对通讯录中各项信息进行查找修改删除排序等一系列操 作; 3、能够完成通讯录的基本功能; 4、凡等候用户输入时,给出足够的提示信息; 5、程序具有一定的健壮性, 不会因为用户的输入错误引起程序运行错误 而中断执行。对输入值的类型、大小范围、字符串的长度等,进行正确性检 查,对不合法的输入值给出出错信息,指出错误类型,等待重新输入; 6、对删除数据应给出警告。 功能分析 1、 录入功能:选择此功能可以用户手动输入联系人各项信息; 2、查看功能:选择此功能时可以选择根据各种信息查询联系人电话、 住址、性别、邮箱、 QQ 等各项信息; 3、排序功能:选择此功能可以按照姓名将所有联系人排序输出;

4、 4、修改功能:选择此功能时能够通过输入联系人姓名或者电话修改 联系人的全部信息; 5、删除功能:选择此功能时能够通过输入联系人姓名或者电话删除联系 人的全部信息; 3 页 5、查看设计人员功能:选择此功能时能够查看该系统设计人员名 单; 6、退出系统功能:选择此功能时能够退出系统并保存数据。 功能结构图: 5 4页 流程图: 主菜单 修 改 联 系 人 查 询 联 系 人 根 据 电 话 查 询 根 据 姓 名 查 询 根 据 类 别 查 询 排 序 输 出 添 加 联 系 人 根 据 电 话 修 改 根 据 姓 名 修 改 删 除 联 系 人 根 据 姓 名 删 除 根 据 电 话 删 除

5、 查 看 设 计 人 员 名 单 退 出 程 序 输入任意键进入主 菜单 根 据 地 址 查 询 6 输入 1 输入 6 输入 5 输入 4 输入 1 输入 2 输入 3 输入 2 输入 1 输入 2 5页 三、数据结构表 输入 06 选择功能 1:添加 2:查询 3:排序 4:修改 5:删除 6:设计人员 0:退出 输 入 各项信息 删除联系人 1:按姓名删 除 1 : 按 姓 名 删 除 2 : 按 电 话 删 除 查 看 设 计 人 员 修 改 联 系 人: 1: 按姓名修 1 : 按 姓 名 修 2 : 按 电 话 修 按 姓 名 排 序 1:按姓名 查询 2:按电话 查询 3:按地址

6、 7 类名数据名数据类型长度 PersonnameChar10 PersonsexChar4 PersontelInt44 PersonaddChar20 PersonPostnumInt40 PersonE_mailChar20 PersonQQInt44 PersonKindChar10 PersonPeoplePerson class person public: char 15 name10,sex4,tel11,add20,postnum10,e_mail20,QQ11,k ind10; public: person() void input() coutname; coutsex;

7、 couttel; coutadd; coutpostnum; coute_mail; coutQQ; 13 页 coutkind; void save() ofstream fout(e:,ios:app); foutnamesexteladdpostnume_mailQQkind; cout信息已保存至 e:nnn;cout 16 n; (); void output() cout 姓 名 :name 性 别 :sex 电 话 :tel 地 址 :add 邮 箱 :postnum E_mail:e_mail QQ:QQ 类 别 :kind endl; ; void main() perso

8、n people30;int i;static int num=0,p_num=0; do couty; system(cls); couti; while(i6|i0) cout选择无效,重新输入05: i; 17 switch(i) case 0:break; case 1:cout请输入您要添加人的信息 :n; peoplep_num.input();peoplep_num.save();num+;p_num+;break ; case 2: coutj; switch(j) case 1: coutq_name; for(int t=0; tnum; t+) if(strcmp(peo

9、plet.name,q_name)=0) cout姓名为:q_name的信息如 下:n;peoplet.output();cout n;break; else cout没有找到q_name 的信 息!n;cout n; break; case 2: 15 页 cout请输入电话 :q_tel; for(int t=0; tnum; t+) if(strcmp(peoplet.tel,q_tel)=0) 18 cout电 话 为 :q_tel的 信 息 如 下:n;peoplet.output();cout n;break; else cout没 有 找 到 q_tel的 信 息!n;cout

10、n; break; case 3: cout请输入地址 :q_add; for(int t=0; tnum; t+) if(strcmp(peoplet.add,q_add)=0) cout地 址 为 :q_add的 信 息 如 下:n;peoplet.output();cout n;break; else cout没 有 找 到 q_add 的 信 息!n;cout n; break; case 4: cout请输入类别 :q_kind; for(int t=0; tnum; t+) 16 页 if(strcmp(peoplet.kind,q_kind)=0) cout类 别 为 :q_ki

11、nd的 信 息 如 下:n;peoplet.output();coutendl; 19 else cout没有找到 q_kind 的信 息!n;cout n; cout n;break; case 5: cout 所有人的信息如下 :n; for(int t=0; tnum; t+) peoplet.output(); cout n; break; default: cout您的输入有误!nendl;cout n; break; break; case 3: person sort;int t; for( t=0; tnum; t+) for(int s=t+1; s0) 17 页 sort=

12、peoplet;peoplet=peoples;peoples=sort; 20 cout按姓名从小到大排序后 :endl; for(int n=0; nnum; n+) peoplen.output(); cout n; break; case 4: coutj; switch(j) case 1: couts_name; for(int t=0; tnum; t+) if(strcmp(peoplet.name,s_name)=0) person s_people;coutn请依次输入修改后的信息 : 名字, 性别, 电话, 地址, 邮政编码 , 邮箱,QQ,类别n; (); people

13、t=s_people;break; cout修改成功 !nn;cout n; break; case 2: couts_tel; for(int t=0; tnum; t+) if(strcmp(peoplet.tel,s_tel)=0) person s_people_tel; coutn请依次输入修改后的信息: 名字, 性别 , 电话, 地址, 邮政编码 , 邮箱,QQ,类别:n; (); peoplet=s_people_tel;break; cout修改成功 !nn;cout n; break; break; case 5: coutj; switch(j) case 1: couts_name; for(int t=0; tnum; t+) if(strcmp(peoplet.name,s_name)=0) int j=t+1; for(j;jnum;j+) peoplet=peoplej; t+; 19 页 22 break; num-;couts_name 已成功删除 !n;cout n; break; case 2: couts_tel; for(int

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 计算机等级考试

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号