通讯录管理软件C++编程Word格式.docx

上传人:b****6 文档编号:18867494 上传时间:2023-01-01 格式:DOCX 页数:14 大小:17.74KB
下载 相关 举报
通讯录管理软件C++编程Word格式.docx_第1页
第1页 / 共14页
通讯录管理软件C++编程Word格式.docx_第2页
第2页 / 共14页
通讯录管理软件C++编程Word格式.docx_第3页
第3页 / 共14页
通讯录管理软件C++编程Word格式.docx_第4页
第4页 / 共14页
通讯录管理软件C++编程Word格式.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

通讯录管理软件C++编程Word格式.docx

《通讯录管理软件C++编程Word格式.docx》由会员分享,可在线阅读,更多相关《通讯录管理软件C++编程Word格式.docx(14页珍藏版)》请在冰豆网上搜索。

通讯录管理软件C++编程Word格式.docx

voidCreatList();

voidset(char*name="

."

char*address="

char*phone="

char*code="

char*email="

);

voidDelete(intt);

voidChange(char*name);

voidFind(intx);

voidfilecin();

voidfileout();

voidshowall();

List:

:

List()

head=tail=NULL;

}

~List()

hum*p;

if(head)

{

p=head;

head=head->

next;

deletep;

}

voidList:

set(char*name,char*address,char*phone,char*email,char*code)//文本导入时调用的构造函数

hum*p=newhum;

strcpy(p->

name,name);

address,address);

phone,phone);

code,code);

email,email);

p->

next=NULL;

if(head==NULL)

head=p;

else

tail->

next=p;

tail=p;

CreatList()//默认的构造函数

intflag=1;

name,"

address,"

phone,"

code,"

email,"

getchar();

cout<

<

"

请输入学生姓名:

;

gets(name);

if(strcmp(name,"

)!

=0)

strcpy(p->

请输入家庭地址:

gets(address);

if(strcmp(address,"

请输入联系电话:

gets(phone);

if(strcmp(phone,"

请输入邮编:

gets(code);

if(strcmp(code,"

请输入电子邮件:

gets(email);

if(strcmp(email,"

hum*q=head;

while(q)

{//判断是否以存在相同的信息

if(strcmp(q->

name,name)==0&

&

strcmp(q->

address,address)==0&

phone,phone)==0&

code,code)==0&

email,email)==0)

{

flag=0;

cout<

已存在相同信息!

\n存入失败!

\n"

break;

}

q=q->

if(flag)

ofstreamoutfile;

outfile.open("

cin.txt"

ios:

app);

//将新数据添加的文本末尾

if(!

outfile)//调试期间怕出错添加的判断函数

cerr<

Fileopenorcreateerror!

endl;

exit

(1);

outfile<

endl<

p->

name<

"

address<

phone<

code<

email;

outfile.close();

p->

if(head==NULL)

head=p;

else

tail->

tail=p;

cout<

信息已经存入通讯录。

}

Delete(intt)//删除函数

请输入要删除人信息:

charshuru[N];

cin>

>

shuru;

hum*p=head,*q;

charflag;

while(p)

{

if((strcmp(p->

name,shuru)==0&

t==1)||(strcmp(p->

phone,shuru)==0&

t==2)||(strcmp(p->

code,shuru)==0)&

t==3)

{

cout<

确定要删除该信息yORn"

//防止误删,给一个判断语句

cin>

flag;

if(flag=='

Y'

||flag=='

y'

{

if(p==head)

head=p->

else

q->

next=p->

deletep;

break;

}

break;

}

q=p;

p=p->

}

ofstreamoutfile;

outfile.open("

trunc);

if(!

cerr<

exit

(1);

q=head;

while(q->

next)//链表输出信息至文本

outfile<

q->

email<

q=q->

}//将删除后的信息存入cin.txt文件中保存

outfile<

outfile.close();

system("

cls"

//每次程序的最终结果都清屏一次,并给出程序最后的结果,方便使用者查看

cout<

程序运行结果:

if(flag=='

cout<

已删除成功!

else

if(flag!

='

||flag!

信息成员未删除.\n"

else

通讯录无此人!

Change(char*name)//修改信息函数

{

hum*p=head;

//使用链表的查找

intflag=0;

while(p)

if(strcmp(p->

name,name)==0)

姓名:

\n"

地址:

电话:

邮编:

E-mail:

getchar();

------无需修改选项直接回车!

---------\n"

//对于无需修改的项目不需要重复填入,方便使用者

输入要修改成的地址:

gets(address);

输入要修改成的电话:

gets(phone);

输入要修改成的邮编:

gets(code);

输入要修改成的E-mail:

gets(email);

if(strcmp(address,"

strcpy(p->

if(strcmp(code,"

if(strcmp(email,"

if(strcmp(phone,"

flag=1;

p=p->

ofstreamoutfile;

outfile.open("

if(!

cerr<

exit

(1);

while(q->

}//将删除后的信息存入cin.txt文件中保存

outfile<

outfile.close();

system("

if(flag==0)

程序最终结果:

通讯录不包含这个人!

E-mail:

信息修改成功!

Find(intx)//1、按名字查找2、按电话查找3、按邮编查找4、按E-mail查找"

{

输入查找人信息:

hum*p=head;

{//查找时4种条件,方便使用者。

x==1)||(strcmp(p->

x==2)||(strcmp(p->

x==3||(strcmp(p->

email,shuru)==0&

x==4))

{

system("

\n查找人:

flag=1;

}

if(flag==0)

system("

filecin()//默认导入文本信息至程序

ifstreamtxtfile;

txtfile.open("

txtfile)

txtopenerror!

while(!

txtfile.eof())

txtfile>

name>

address>

phone>

code>

List:

set(name,address,phone,code,email);

txtfile.close();

fileout()//导出信息至文本

fstreamoutfile;

cout.txt"

out|ios:

while(p)//链表输出信息至文本

printf("

导出信息至文本成功!

showall()//链表输出各个成员信息

while(p)

intmain()

ListTXL;

intn=1;

//n表示要输入的操作步骤

TXL.filecin();

//程序打开默认导入记录在cin.txt中的文件内容。

while(n)

{

欢迎使用通信簿!

//用户友好界面

请选择以下操作!

-----1-添加通讯录信息\n"

-----2-修改通讯录信息\n"

-----3-删除通讯录信息\n"

-----4-查找通讯录信息\n"

-----5-输出通讯录信息\n"

-----6-文本导出信息\n"

-----7-退出通讯录\n"

输入菜单中的操作步骤:

cin>

n;

switch(n)

case1:

TXL.CreatList();

//在程序运行时添加成员

case2:

输入要修改的人的名字:

cin>

name;

TXL.Change(name);

case3:

1---根据姓名删除信息\n"

//不同的删除方式。

2---根据电话删除信息\n"

3---根据E-mail删除信息\n"

intt;

t;

TXL.Delete(t);

case4:

查找方式"

//不同的查找方式。

------1、按名字查找\n------2、按电话查找\n------3、按邮编查找\n------4、按E-mail查找"

请输入查找方式:

intx;

x;

TXL.Find(x);

case5:

TXL.showall();

case6:

TXL.fileout();

break;

//文件导出最终结果

case7:

n=0;

default:

操作错误!

return0;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 成考

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

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