收藏 分销(赏)

C程序设计通讯录管理系统.doc

上传人:a199****6536 文档编号:3902051 上传时间:2024-07-23 格式:DOC 页数:31 大小:244KB
下载 相关 举报
C程序设计通讯录管理系统.doc_第1页
第1页 / 共31页
C程序设计通讯录管理系统.doc_第2页
第2页 / 共31页
C程序设计通讯录管理系统.doc_第3页
第3页 / 共31页
C程序设计通讯录管理系统.doc_第4页
第4页 / 共31页
C程序设计通讯录管理系统.doc_第5页
第5页 / 共31页
点击查看更多>>
资源描述

1、C程序设计通讯录管理系统312020年4月19日文档仅供参考c+通讯录管理系统学号:班级:软件八班姓名:付博指导教师:沙晨明目录1系统设计目标及意义、功能介绍 32系统的详细设计思路 33系统运行效果图 114系统设计、开发过程中的问题 135课程设计心得体会 136附录源代码及简要说明 13一、系统设计目标及意义、功能介绍(一) 系统设计的目标及意义 通讯录管理系统的建立是为了有效节省同学,朋友,客户间日常交流的投资(指时间,精力),其设计理念很简单,变传统的纸张与笔录方式为计算机自动化进行通讯录信息管理系统,既省时间又提高效率。本通讯录管理系统是一个非常通用的管理系统,运用Visual C

2、+,构建MFC平台,用户能够经过图像窗口菜单进行信息录入、删除、查找,直观方便。(二) 系统设计的功能介绍1、录入成员信息。基本信息:姓名、性别、出生年月日、民族等。2、删除一个成员信息。 3、修改成员信息并保存。4、能够按姓名对成员信息进行检索并将检索结果显示在屏幕上。 5、能够按专业对成员信息进行检索并将检索结果显示在屏幕上。6、显示所有成员信息。 7、能够利用图形菜单的形式进行管理。二、系统的详细设计思路(一)系统的总体框架(二) 通讯录对象的主要属性(三)功能分析1、联系人管理者(1)增加联系人:联系人信息包括姓名、就读学校、班级、专业、家庭地址、家庭联系电话、邮编、本人联系电话这些信

3、息。添加时,内容不能为空。(2)修改联系人资料:对已存的联系人信息进行变更、修改。正常情况下,联系人的姓名是不会发生变化的,但考虑到更名的情况还是偶有发生,因此设计为联系人所有资料都允许更改,这样能够灵活应对这些不太常见的情况。(3)删除联系人:对选定联系人执行删除操作,为了防止误删除,给使用者一个反悔的机会,在执行删除前要询问使用者是否真的要删除,在得到确认后执行删除操作。2、联系人信息查询与显示通讯录使用频率最高的功能就是查询联系人的信息。查询能够查询某个学院、某个专业、某个班级下所有的联系人。而且提供了按姓名和按学号查询的功能,而且同名的人都能够显示。联系人显示窗口示姓名、就读学校、班级

4、、专业、家庭地址、家庭联系电话、邮编、本人联系电话这些信息。三,系统运行效果图1,主界面2,添加联系人信息3删除联系人信息4显示所有联系人5,修改信息6,查询联系人信息7,关闭系统四,系统开发过程中遇到的问题在初步完成该程序时,我发现程序有一个严重的漏洞,当系统保存的学生信息中有同名或者编号相同的同学时,这时若要执行查询或者删除学生信息时,只能查询到或删除第一个符合条件的同学,这就导致了程序的错误。后来我发现只需要将程序中一些“break”换成“continue”便能够解决这个问题,也就使程序在读到第一个符合条件的同学信息时不结束读取,而是继续读入,这样就能够将同名或编号相同的学生全部查询到,

5、不会漏查。五,课程设计心得体会1在编写程序的过程中,我将课本中的大部分知识又都熟悉了一遍,使我对课本又有了更深的记忆,同时又弄懂了一些以前不太明白的地方。2在编程过程中,我还明白了做事要有耐心,决不能心急,要一步一步地来,不清楚的地方一定要查书,用到什么就查什么,比如在用到输入、输出函数时,不知道整型、实型、字符型、字符串用什么格式,就要认真地去看一下教材,切不可自我放弃。3我还明白了只要我们肯用心,就没有什么是困难的。或许我们在编程时会遇到各种各样的困难,但只我们用心思考,我们总能从学过的知识中找到解决这些问题的方法,这些方法或许是书上没有的,或许是没人用过的。当这些问题得到解决时,我发现自

6、己真的很开心!六,附录源代码及简要说明#include #include #include #include #include #include using namespace std;/各种变量。int n; string d= ;int flag=0;/*/ / 上面是一些乱遭的遍量。 class filepublic:file(string n,string s,string b,string t):name(n),sex(s),banji(b),telephone(t);file()file()void set(string n,string s,string b,string t);

7、/ 一系列修改。 void alter_name(string n)name=n;void alter_sex(string s)sex=s;void alter_banji(string b)banji=b;void alter_telephone(string t)telephone=t;/*/static int getnumber()return number;static void addnumber()number+;static void cutnumber()number-;bool judgename (string s)string strA=name;transform(

8、strA.begin(), strA.end(), strA.begin(), :tolower); /全部改为小写 transform(s.begin(), s.end(), s.begin(), :tolower);if(s=strA)return true;elsereturn false;bool judgetelephone (string s)string strA=telephone;if(s=strA)return true;elsereturn false;void add();void display();private:/ 名字 性别 生日 单位 参加工作时间 职称 住址

9、string name,sex,banji,telephone;int status; static int number ;file person100;int file:number = 2; / 静态 计数器。 void file:set(string n,string s,string b,string t)name=n,sex=s,banji=b,telephone=t;void file:add()cout请输入档案信息:endl;cout姓名 性别 班级 电话 nsbt;name=n,sex=s,banji=b,telephone=t;addnumber();void file:

10、display()coutnamedsexdbanjidtelephoneendl;/*/ / 上面是类的各种定义 下面是系统的各种函数 void init()person0.set(Dongquan ,man,15-6,);person1.set(Tourist ,man,15-8,); return ;void menu()cout序号 姓名 性别 班级 电话endl; void show()menu();for(int i=0;ifile:getnumber() ;i+)couti+1t;personi.display();int name_search(string s)int num

11、=-1; for(int i=0;ifile:getnumber() ;i+)if(personi.judgename(s)personi.display(); num=i;return num;int telephone_search(string s)int num=-1;for(int i=0;ifile:getnumber();i+)if(personi.judgetelephone(s)personi.display();num=i;return num; void Main_screen()system(CLS);coutnnnnendl;if(!flag)couttt-欢迎使用档

12、案信息管理系统-endl;elsecouttt-endl;cout endltt(1) 浏览数据endltt(2) 增加数据endltt(3) 修改数据endltt(4) 查询数据(按姓名,按电话)endltt(5) 删除数据endltt(0) 退出程序endln;system(CLS);if(n=1) /浏览 if(!file:getnumber()cout列表内无数据endl; cout添加数据请按 1 endl按其它任意键返回主界面。 x;if(x=1)system(CLS);goto plus; elseshow(); cout列表浏览成功,endl;cout按任意键返回主菜单endl

13、;getch();system(CLS); else if(n=2) /增加 plus:;personfile:getnumber().add();cout添加成功,endl;cout按任意键返回主菜单endl;getch();else if(n=3) /修改 cout是否先浏览一下数据?Y(y)/N(n)s1; if(s1=Y|s1=y) show();cout请输入需要修改的档案序号n3; /修改什么? /多个数据修改 单个数据修改。 cout 全部数据修改请按 1) 单个数据修改请按 2)n4;if(n=1)cout姓名性别班级电话nsbt;personn3-1.set(n,s,b,t)

14、 ; else cout修改姓名请按1,性别请按2,班级请按3,电话请按4n5;if(n5=1) cout请输入新的姓名s4;personn3-1.alter_name(s4);else if(n5=2)cout请输入新的性别s4;personn3-1.alter_sex(s4);else if(n5=3)cout请输入新的班级s4;personn3-1.alter_banji(s4);else if(n5=4)cout请输入新的电话号码s4;personn3-1.alter_telephone(s4);cout修改成功endl;else if(n=4) /查询 query:cout 请选择查

15、询方式: endl1) 姓名 2)电话 x;if(x=1)name_query:cout 请输入查询的姓名: na;cout 查询结果: endl;int nn=name_search(na);if(nn=-1)cout 很抱歉,没有查询到相关信息: endl;cout 重新查找请按 1 : endl;cout 返回上级菜单请按 2 : endl;cout 返回主页面请按 3 : mm;system(CLS);if(mm=1)goto name_query;else if(mm=2)goto query; else if(mm=3)goto head;elsetele: cout 请输入查询的

16、电话: un;cout 查询结果: endl;int nn=telephone_search(un);if(nn=-1)cout 很抱歉,没有查询到相关信息: endl;cout 重新查找请按 1 : endl;cout 返回上级菜单请按 2 : endl;cout 返回主页面请按 3 : mm;system(CLS);if(mm=1)goto tele;else if(mm=2)goto query; else if(mm=3)goto head; cout按任意键返回主菜单endl;getch(); system(CLS);else if(n=5) /删除数据 reduce :cout是否

17、先浏览一下数据?(Y/N)s1;if(s1=Y|s1=y)show();/删除方式 cout请输入需要删除的数据序号n2;for(int i=0;i=n2)personi-1=personi; file:cutnumber();cout删除成功。继续删除请按 1) 、返回主页请按其它任意键endl;int n3;n3=getch();if(n3=1)goto reduce;else if(n=0)goto tail;else cout该选项不存在!按任意键返回主菜单endl;getch();system(CLS);goto head;goto head;tail: /退出程序system(CLS);coutendlendl-感谢您使用档案信息管理系统!再见!-endlendl; return 0;

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服