个人通信录管理系统课程设计_第1页
个人通信录管理系统课程设计_第2页
个人通信录管理系统课程设计_第3页
个人通信录管理系统课程设计_第4页
个人通信录管理系统课程设计_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、个人通信录管理系统一、需求描述(1)查看功能:选择此功能时,列出下列三类选择。 a 办公类;b 个人类; c 商务类;当选中某类时,显示出此类所有数据中 的姓名和电话号码) (2)增加功能:能录入新数据(一个结点包括:姓名、电话号码、分类(可选项有:a 办公类; b 个人类; c 商务类;当录入了重复的姓名和电话号码时,则提示数据录入重复并取消录入;当通信录中超过15条信息时,存储空间已满,不能再录入新数据;录入的新数据能按递增的顺序自动进行条目编号。 (3)拔号功能:能显示出通信录中所有人的姓名,当选中某个姓名时,屏幕上模拟打字机的效果依次显示出此人的电话号码中的各个数字。 (4)修改功能:

2、选中某个人的姓名时,可对此人的相应数据进行修改。 (5)删除功能:选中某个人的姓名时,可对此人的相应数据进行删除,并自动调整后续条目的编号。二、系统总体分析设计具体函数:修改 void alter() 删除void deleted()查看 void show() 添加void increase()拨号 void dail() 主函数int main()三、编码#include #include using namespace std;struct node string name;string telephone;string sort;class baseprotected:node a15

3、;int i;public:base()i=0;void show()/-查看int j,x;if(i!=0)cout*选择3个类中的一个:*endl; cout*1:办公*endl; cout*2:个人*endl; cout*3:商务*x;switch(x)case 1:for(j=0;ji;j+)if(aj.sort=办公)cout姓名 号码endl; aj.telephoneendl;break;case 2:for(j=0;ji;j+)if(aj.sort=个人)cout姓名 号码endl; aj.telephoneendl;break;ca

4、se 3:for(j=0;ji;j+)if(aj.sort=商务)cout姓名 号码endl; aj.telephoneendl;break;else cout空间无信息!endl;void increase()/-增加string q,p,r;cout输入要存于的数据:qpr;for(int j=0;ji;j+)if(=q&aj.telephone=p)break;if(i15)if(j=i)=q;ai.telephone=p;ai.sort=r;i+;else cout数据录入重复!endl;else cout存储空间已满!endl;voi

5、d dail()/-拨号string f,t;int p,k=0,r,m;cout此类存储的所有姓名:endl;for(int j=0;ji;j+)endl;cout输入要拨号的姓名:f;j=0;for(j=0;j=i;j+)if(f=)cout号码为:endl;coutaj.telephoneendl;t=aj.telephone+#;while(tk!=#)coutaj.telephonek ;k+;for(m=0;m80000000;m+)/k=k*k;/k=4;for(m=0;m20;m+)cout.;for(r=0;r80000000;r+)/k=

6、k*k;coutb;cout ;coutb;cout.;for(r=0;r80000000;r+)/k=k*k;coutb;coutb;cout ;cout ;coutb;coutb;cout.;for(r=0;r80000000;r+)k=k*k;coutb;coutb;coutb;cout ;cout ;cout ;coutb;coutb;coutb;putchar(a);couti)cout无此人的信息!endl;void alter()/-修改string f;cout输入要修改的姓名:f;for(int j=0;aj.telephoneaj.sort;break;if

7、(ji)cout无此人的信息!endl;void deleted()/-删除 string f;cout输入要删除的姓名:f;for(int j=0;j=i;j+)if(f=)for(int k=j;ki)cout无此人的信息!endl;int main()base k1;for(;)cout*endl;cout1.增加新联系人endl;cout2.修改联系人信息endl;cout3.删除联系人endl;cout4.查看联系人endl;cout5.拨号功能endl;cout*k;switch(k)case 1:k1.increase();break;case 2:k1.alter

8、();break;case 3:k1.deleted();break;case 4:k1.show();break;case 5:k1.dail();break;return 0;四、程序运行说明1.添加联系人2.查看已输入的信息3.修改信息并查看修改结果(李艾改为李浩)4. 删除信息并查看修改结果(删除李浩)5.拨号功能(拨号王楠)五、部分程序功能描述在实验负责修改和删除程序,一下是我负责的程序源代码,利用数组和if循环语句实现该功能。void show()/-查看int j,x;if(i!=0)cout*选择3个类中的一个:*endl; cout*1:办公*endl; cout*2:个人*

9、endl; cout*3:商务*x;switch(x)case 1:for(j=0;ji;j+)if(aj.sort=办公)cout姓名 号码endl; aj.telephoneendl;break;case 2:for(j=0;ji;j+)if(aj.sort=个人)cout姓名 号码endl; aj.telephoneendl;break;case 3:for(j=0;ji;j+)if(aj.sort=商务)cout姓名 号码endl; aj.telephoneendl;break;else cout空间无信息!endl;v

10、oid increase()/-增加string q,p,r;cout输入要存于的数据:qpr;for(int j=0;ji;j+)if(=q&aj.telephone=p)break;if(i15)if(j=i)=q;ai.telephone=p;ai.sort=r;i+;else cout数据录入重复!endl;else cout存储空间已满!endl;六、测试报告在我负责的部分在在测试中存在如下问题1.一些简单的错误,如忘记分号,单词拼写错误等,在看到提示后找到所在位置可以及时改正。2.在运行的过程中每次增加或修改、删除完后都应该及时查看一下,看是否修改成功,从而得知程序运行是否顺利。七、课程总结本小组共有三人,根据本实验要求完成的几个功能,在实验初期我们做了具体的分工,函数的定义部分由大家一起完成,子函数再有专人完成,其中我负责的是查看和增加的部分。在编写函数中我发现查看和增加的操作有很多的相似之处,都是需要循环语句来实现功能,本实验我们采取数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论