ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:18.72KB ,
资源ID:17882085      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17882085.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(完整word版通讯管理系统源代码Word文档下载推荐.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

完整word版通讯管理系统源代码Word文档下载推荐.docx

1、#define MAXSIZE 15/联系人信息typedef struct string name; /姓名 string teleNum; /电话号码 int classes; /分类 string email; /电子邮件contacts;/链表存储结构typedef struct LNode contacts data; /数据域 struct LNode* next; /指针域LNode,*LinkList;/初始化链表int InitList(LinkList &L) L = new LNode; L-next = NULL; return 0;/前插法创建链表void Creat

2、eList_H(LinkList &L,int n) LinkList p; for(int i = 0;i n;i+) /根据联系人个数创建链表 p = new LNode; cout p-data.name;请输入联系人的电话号码:data.teleNum;请输入联系人的分类(分类如下,输入相应序号即可) data.classes;请输入联系人的电子邮件:data.email;next = L-next;next=p; /根据类别查看联系人信息 void CheckAll(LinkList L,int c)/c是联系人类别 p = L-姓名tt电话号码 /表头 while(p) /当链表没

3、到尾部时 if(p-data.classes=c) /若符合类别则输出联系人姓名和电话号码 cout data.name ttdata.teleNum /重载函数,查看所有联系人 void CheckAll(LinkList L) p=L- while(p) p=p- /根据姓名查找联系人LinkList Search(LinkList L,string name) while(p&p-data.name!=name) /当链表没到尾部且没找到联系人时 return p;/判断链表中是否存在联系人cchar IfExist(LinkList L,contacts c) =c.name) /根据

4、姓名查找是否存在该联系人 if(!p) /若到达链表尾部,则不存在 return n if(p-data.teleNum=c.teleNum) /若找到联系人姓名data.classes=c.classes) /依次判断电话号码、类别、电子邮件是否相同 data.email=c.email)y/获取链表的长度int Length(LinkList L) int i=0; LinkList p=L- +i; return i;/增加联系人 int Add(LinkList &L,contacts c) LinkList p,s; if(Length(L)=MAXSIZE) /判断链表长度是否达到

5、最大值 存储空间已满,无法新增联系人! if(IfExist(L,c)=) /判断输入的联系人是否已经存在 对不起,您输入的联系人已存在! /若通讯录中不存在该联系人,则增加到通信录 p=L; s=new LNode; s-data=c;next=p-next=s;/拨号功能void Dail(LinkList L,string name) s=Search(L,name); /根据姓名查找联系人所在 /模拟打字机效果,输出联系人电话号码 string tele=s- for(int i=0;itele.length();i+) char c=telei; Sleep(500); cout n

6、ext&next-=name) s=p-next=s- delete s; /删除联系人 /导入通信录 void Read(LinkList L) /打开文件导入通信录 ifstream fin; fin.open(通信录.txt,ios:in); string s1,s2,s3,s4; fin s1 s2 s3 s4; while(!fin.eof() /当没有到文件尾时 string s5; contacts c; fin c.name c.teleNum s5 c.email; if(pare(办公类)=0) c.classes=1;个人类 c.classes=2;商务类 c.class

7、es=3; Add(L,c); /将联系人c增加到链表中 fin.close();/导出通信录 void Write(LinkList L) int l=Length(L); /打开文件写入通信录 ofstream fout(out|ios:trunc); fout 姓名t电话号码t分类t电子邮件 l; fout data.classes) case 1: fout break; case 2: case 3: if(i(l-1) fout fout.close();int Menu()/主菜单 system(cls);/清屏 int choice; coutchoice;/输入选择 retu

8、rn choice; int main()/主函数 LinkList L; InitList(L); for(; switch(Menu()/根据不同选择,执行不同的功能 case 1: cout c1; if(c1=1) cout number; CreateList_H(L,number); /用前插法批量增加联系人 else /单个增加联系人 contacts c; c.name; c.teleNum; c.classes; Add(L,c); system(pause break;/查看通信录请输入查看联系人的类别(输入相应序号即可):1 办公类 2 个人类 3 商务类 int c2;

9、 c2;已有联系人如下: CheckAll(L,c2); /根据分类查看联系人信息 system( CheckAll(L); string name;请输入拨号人的姓名: name; Dail(L,name); /根据 CheckAll(L); string changeName;请输入要修改信息的联系人姓名: changeName; ChangeInfo(L,changeName); case 5: string deleteName;请输入要删除的联系人姓名: deleteName; Delete(L,deleteName);联系人 deleteName 已删除! case 6: Read(L);成功导入通信录!已导入联系人姓名如下: CheckAll(L); break; case 7: Write(L);成功导出通信录! break; case 0: /退出系统 cout 感谢您对本通信录管理系统的使用! return 0; default: cout 您输入的指令有误,请重新输入!/输入错误指令时给予提示

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1