创新版通讯录.docx
- 文档编号:7709720
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:31
- 大小:22.13KB
创新版通讯录.docx
《创新版通讯录.docx》由会员分享,可在线阅读,更多相关《创新版通讯录.docx(31页珍藏版)》请在冰豆网上搜索。
创新版通讯录
题目三:
通讯录管理系统
要求完成以下功能:
(1)添加、修改、删除成员信息。
成员基本信息:
姓名、现就读大学名称及班级名、专业(speciality)、家庭住址、家庭联系电话(number)、邮编、本人联系电话、email、QQ号等。
(2)查询成员信息,包括显示所有成员信息,能够按姓名对成员信息进行检索并将检索结果
显示在屏幕上,能够按专业对成员信息进行检索并将检索结果显示在屏幕上。
(3)能够按其他信息查询成员,如按QQ号,部分姓名(只有名或只有姓)等。
(选做)
(4)能够根据联系的信息单独或分类查询。
(5)联系人的生日提醒功能。
(选做)
(6)要求利用菜单的形式进行管理。
(可以采用文本菜单,如果图形菜单更好)
1.界面:
#include
#include
#include
structstudent//结构体
{charspec[13];//专业
charuniversity[14];//大学
charname[20];//姓名
charaddress[100];//地址
chartel_no[12];//家庭电话
charnumber[15];//本人电话
charpost_code[7];//邮编
chare_mail[40];//电子邮件
charQQ[16];};//qq号
classinter//定义一个inter类,实现通讯录的功能
{
private:
studentst[35];//私有成员student
public:
voidadd(charspec[13],charuniversity[14],charname[20],charaddress[100],chartel_no[12],charnumber[15],charpost_code[7],chare_mail[40],charQQ[16]);//增加
voiddel(charname[20]);//删除
voidfind1(charspec[13]);//按专业查找
voidfind2(charuniversity[14]);//按大学查找
voidfind3(charname[20]);//按姓名查找
voidfind4(charaddress[100]);//按地址查找
voidfind5(chartel_no[12]);//按家庭电话查找
voidfind6(charnumber[15]);//按本人电话查找
voidfind7(charpost_code[7]);//按邮编查找
voidfind8(chare_mail[40]);//按电子邮件查找
voidfind9(charQQ[16]);//按QQ号查找
intcorrect(charname[20]);//修改通讯录的信息
voidread();//文件读入
voidwrite();//资料写入
voidformat();//格式化
intback()//判断是否回到主菜单
{
cout<<"返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写):
";charback;
cin>>back;
if(back=='R'||back=='r')
return1;
elsereturn0;}
voidprint(inti)//输出信息
{
cout<<"专业:
"< cout<<"大学: "< cout<<"姓名: "< cout<<"地址: "< cout<<"家庭电话号码: "< cout<<"本人电话号码: "< cout<<"邮编: "< cout<<"E_MAIL: "< cout<<"QQ号码: "< } };//主函数首页 intmain() { intera;//定义inter类的一个对象a a.format();//调用格式化函数format charselect1; cout< top: cout<<"\t\t信电123"< <<"\t\t★★★★★★★★★★★★★★★★★★★★★★★★★★"< <<"\t\t※※"< <<"\t\t※通迅录※"< <<"\t\t※※"< <<"\t\t※1.通讯录编辑.※"< <<"\t\t※※"< <<"\t\t※2.查询联系人.4.将文件读入程序.※"< <<"\t\t※※"< <<"\t\t※3.将资料写入文件.5.格式化(慎用).※"< <<"\t\t※※"< <<"\t\t★★★★★★★★★★★★★★★★★★★★★★★★★★"< <<"\t\t"< <<"\t\t\t选择: "; cin>>select1; switch(select1) { case'1': cout<<" (1)添加: "< cout<<" (2)删除: "< cout<<"(3)修改: "< charselect2; cout<<"请选择: "< cin>>select2; switch(select2) { case'1': cout<<"输入添加的资料: "< charspec[13]; charuniversity[14]; charname[20]; charaddress[100]; chartel_no[12];//家庭电话 charnumber[15];//本人电话 charpost_code[7]; chare_mail[40]; charQQ[16];//qq号 cout<<"输入专业: "< cin>>spec; cout<<"输入大学: "< cin>>university; cout<<"输入姓名: "< cin>>name; cout<<"输入地址: "< cin>>address; cout<<"输入家庭电话号码: "< cin>>tel_no; cout<<"输入本人电话号码: "< cin>>number; cout<<"输入邮编: "< cin>>post_code; cout<<"输入E_mail: "< cin>>e_mail; cout<<"输入QQ号码: "< cin>>QQ; a.add(spec,university,name,address,tel_no,number,post_code,e_mail,QQ); cout<<"返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写): ";charback_add; cin>>back_add; if(back_add=='R'||back_add=='r') gototop; elsegotobottom;break; case'2': cout<<"输入要删除人的姓名: "< charname2[20]; cin>>name2; a.del(name2); cout<<"返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写): "; charback_del; cin>>back_del; if(back_del=='R'||back_del=='r') gototop; elsegotobottom; break; case'3': cout<<"输入需要修改人的姓名: "< charname3[20]; cin>>name3; if(a.correct(name3)) gototop; elsegotobottom; break;} break; case'2': cout<<" (1)根据专业查找"< cout<<" (2)根据大学查找"< cout<<"(3)根据姓名查找"< cout<<"(4)根据家庭地址查找"< cout<<"(5)根据家庭电话查找"< cout<<"(6)根据本人电话号码查找"< cout<<"(7)根据邮编查找"< cout<<"(8)根据e_mail查找"< cout<<"(9)根据QQ查找"< charselect3; cout<<"请选择: "; cin>>select3; switch(select3) { case'1': charspec4[13]; cout<<"输入专业: "; cin>>spec4; a.find1(spec4); cout<<"返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写): ";charback_f1; cin>>back_f1; if(back_f1=='R'||back_f1=='r') gototop; elsegotobottom;break; case'2': charuniversity4[14];cout<<"输入大学: "; cin>>university4; a.find2(university4); cout<<"返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写): ";charback_f2; cin>>back_f2; if(back_f2=='R'||back_f2=='r') gototop; elsegotobottom;break; case'3': charname4[20]; cout<<"输入姓名: "; cin>>name4; a.find3(name4); cout<<"返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写): ";charback_f3; cin>>back_f3; if(back_f3=='R'||back_f3=='r') gototop; elsegotobottom;break; case'4': charaddress4[100];cout<<"输入家庭地址: "; cin>>address4; a.find4(address4); cout<<"返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写): ";charback_f4; cin>>back_f4; if(back_f4=='R'||back_f4=='r') gototop; elsegotobottom;break; case'5': chartel_no4[12];cout<<"输入家庭电话号码: "; cin>>tel_no4; a.find5(tel_no4); cout<<"返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写): ";charback_f5; cin>>back_f5; if(back_f5=='R'||back_f5=='r') gototop; elsegotobottom;break; case'6': charnumber4[15];cout<<"输入本人电话号码: "; cin>>number4; a.find6(number4); cout<<"返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写): ";charback_f6; cin>>back_f6; if(back_f6=='R'||back_f6=='r') gototop; elsegotobottom;break; case'7': charpost_code4[7];cout<<"输入邮编: "; cin>>post_code4; a.find7(post_code4); cout<<"返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写): ";charback_f7; cin>>back_f7; if(back_f7=='R'||back_f7=='r') gototop; elsegotobottom;break; case'8': chare_mail4[40];cout<<"输入电子邮件: "; cin>>e_mail4; a.find8(e_mail4); cout<<"返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写): ";charback_f8; cin>>back_f8; if(back_f8=='R'||back_f8=='r') gototop; elsegotobottom;break; case'9': charQQ4[16];cout<<"输入QQ号: "; cin>>QQ4; a.find9(QQ4); cout<<"返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写): ";charback_f9; cin>>back_f9; if(back_f9=='R'||back_f9=='r') gototop; elsegotobottom;break; } break; case'3': a.write(); cout<<"返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写): ";charback_w; cin>>back_w; if(back_w=='R'||back_w=='r') gototop;elsegotobottom;break; case'4': a.read(); cout<<"返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写): ";charback_r; cin>>back_r; if(back_r=='R'||back_r=='r') gototop;elsegotobottom;break; case'5': cout<<"请确认删除所有资料! (Y/N)"; charselect5;cin>>select5; if(select5=='Y'||select5=='y') a.format(); cout<<"返回还是回到主菜单(T为退出,R为回到主菜单,不计大小写): ";charback_f;cin>>back_f; if(back_f=='R'||back_f=='r')gototop;elsegotobottom; break; } bottom: cout<<"★★★★★★★★★★★★★★★★★★★★★★★"< return0;} //添加联系人 voidinter: : add(charspec[13],charuniversity[14],charname[20],charaddress[100],chartel_no[12],charnumber[15],charpost_code[7],chare_mail[40],charQQ[16]) {intx=1; for(inti=0;i<35;i++) { if(! strcmp(st[i].spec,"0")) {strcpy(st[i].spec,spec); strcpy(st[i].university,university); strcpy(st[i].name,name); strcpy(st[i].address,address); strcpy(st[i].tel_no,tel_no); strcpy(st[i].number,number); strcpy(st[i].post_code,post_code); strcpy(st[i].e_mail,e_mail); strcpy(st[i].QQ,QQ);x=0;} if(x==0)break; } } //删除联系人 voidinter: : del(charname[20]) {intx=1; for(inti=0;i<35;i++) {if(! strcmp(st[i].name,name)) {strcpy(st[i].address,"0"); strcpy(st[i].e_mail,"0"); strcpy(st[i].university,"0"); strcpy(st[i].name,"0"); strcpy(st[i].spec,"0"); strcpy(st[i].post_code,"0"); strcpy(st[i].tel_no,"0"); strcpy(st[i].number,"0"); strcpy(st[i].QQ,"0");} elsex=0;} if(x==0) cout<<"error: 输入姓名错误! "< //修改联系人 intinter: : correct(charname[30]) {intx; for(inti=0;i<35;i++) {if(! strcmp(st[i].name,name)) x=i;} charselect; cout<<" (1)修改姓名: "< cout<<" (2)修改专业: "< cout<<"(3)修改地址: "< cout<<"(4)修改邮编: "< cout<<"(5)修改家庭电话号码: "< cout<<"(6)修改E_MAIL: "< cout<<"(7)修改大学: "< cout<<"(8)修改本人电话号码: "< cout<<"(9)修改QQ号码: "< cout<<"请选择: "; cin>>select; switch(select) {case'1': cout<<"输入要修改的姓名: "; charname1[20]; cin>>name1; strcpy(st[x].name,name1); cout<<"修改成功! "< returnback(); break; case'2': cout<<"输入要修改的专业: "; charspec1[13]; cin>>spec1; strcpy(st[i].spec,spec1); cout<<"修改成功! "< returnback(); break; case'3': cout<<"输入要修改的地址: "; charaddress1[100]; cin>>address1; strcpy(st[x].address,address1); cout<<"修改成功! "< returnback(); break; case'4': cout<<"输入要修改的邮编: "; charpost_code1[7]; cin>>post_code1; strcpy(st[x].post_code,post_code1); cout<<"修改成功! "< returnback(); break; case'5': cout<<"输入要修改的电话号码: "; chartel_no1[12]; cin>>tel_no1; strcpy(st[x].tel_no,tel_no1); cout<<"修改成功! "< returnback(); break; case'6': cout<<"输入要修改的E_MAIL: "; chare_mail1[40]; cin>>e_mail1; strcpy(st[x].e_mail,e_mail1); cout<<"修改成功! "< case'7': cout<<"输入要修改的大学: "; charuniversity1[14]; cin>>university1; strcpy(st[x].university,university1); cout<<"修改成功! "< returnback(); break; case'8': cout<<"输入要修改的本人电话号码: "; charnumber1[15]; cin>>number1; strcpy(st[x].number,number1); cout<<"修改成功! "< returnback(); break; case'9': cout<<"输入要修改的QQ: "; charQQ1[16]; cin>>QQ1; strcpy(st[x].QQ,QQ1); cout<<"修改成功! "< returnback(); break; } } //按专业查询联系人 voidinter: : find1(charspec[13]) {intx,y=1,z=1; for(inti=0;i<35;i++) {if(! strcmp(st[i]
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 创新 通讯录