通讯录管理软件C++编程Word文件下载.docx
- 文档编号:17713460
- 上传时间:2022-12-08
- 格式:DOCX
- 页数:14
- 大小:17.77KB
通讯录管理软件C++编程Word文件下载.docx
《通讯录管理软件C++编程Word文件下载.docx》由会员分享,可在线阅读,更多相关《通讯录管理软件C++编程Word文件下载.docx(14页珍藏版)》请在冰豆网上搜索。
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;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通讯录 管理软件 C+ 编程