C++课程设计报告1通讯录管理程序Word文件下载.docx
- 文档编号:19357537
- 上传时间:2023-01-05
- 格式:DOCX
- 页数:17
- 大小:93.13KB
C++课程设计报告1通讯录管理程序Word文件下载.docx
《C++课程设计报告1通讯录管理程序Word文件下载.docx》由会员分享,可在线阅读,更多相关《C++课程设计报告1通讯录管理程序Word文件下载.docx(17页珍藏版)》请在冰豆网上搜索。
三、系统分析与设计(确定程序功能模块)
定义一下函数
cntacts(){n=0;
}
voidadd();
//添加联系人
voiddisplay();
//显示联系人
voidsearch();
//查找联系人
voidrevise();
//修改联系人
voiddelet();
//删除联系
voidout();
//退出
四、源程序代码
#include<
iostream>
string>
usingnamespacestd;
structcontacts
{
public:
contacts(){n=0;
//删除联系人
voidout();
private:
intn;
stringname;
//联系人姓名
stringsex;
//联系人性别
stringage;
//联系人年龄
stringphonenumber;
//联系人电话号码
stringqqnumber;
//联系人QQ号码
stringbirthday;
//联系人生日
stringaddress;
//联系人地址
stringpostalcode;
//联系人邮政编码
stringemail;
//联系人电子邮箱
}con[100];
//定义一个类contacts
voidmain()//主函数
contactsdata;
intnumber;
do
{
cout<
<
"
###############################通信录##############################"
endl;
####"
##<
1>
添加联系人<
2>
显示联系人##"
3>
查找联系人<
4>
修改联系人##"
5>
删除联系人<
6>
退出##"
###################################################################"
注意:
输入生日时,例如1990年5月1日出生的,输入时要输入19900501"
cout<
请选择你需要的功能:
;
cin>
>
number;
switch(number)
case1:
data.add();
break;
case2:
data.display();
case3:
data.search();
case4:
data.revise();
case5:
data.delet();
case6:
data.out();
default:
cout<
!
error!
}
}while(number<
7);
voidcontacts:
:
add()//添加联系人
loop:
新建联系人:
联系人姓名:
con[n].name;
性别:
con[n].sex;
年龄:
con[n].age;
电话号码:
con[n].phonenumber;
QQ号码:
con[n].qqnumber;
生日:
con[n].birthday;
地址:
con[n].address;
邮政编码"
con[n].postalcode;
电子邮箱"
con[n].email;
添加成功!
n++;
是否继续添加?
选择1键返回上一步;
输入其他内容后按ENTER键返回主菜单"
if(number==1)
gotoloop;
else
;
display()//显示联系人
显示联系人:
联系人姓名性别年龄电话号码QQ号码生日地址邮政编码电子邮箱"
for(inti=0;
i<
n;
i++)
con[i].name<
"
con[i].sex<
con[i].age<
con[i].phonenumber<
<
con[i].qqnumber<
con[i].birthday<
con[i].address<
con[i].postalcode<
con[i].email<
search()//查找联系人
查找联系人:
1按姓名查找"
2按电话号码查找"
3按QQ号码查找"
请选择你需要的查询方式:
intselect,number,i;
select;
switch(select)
//按姓名查找
{
cout<
请输入想要查询的姓名:
stringname;
cin>
name;
for(i=0;
=n;
if(con[i].name==name)
{
endl
<
break;
}
if(con[i].name!
=name)
{
cout<
该姓名不存在。
输入其他内容后按ENTER键返回主菜单;
cin>
if(number==1)
gotoloop;
else
break;
}
}
//按电话号码查找
loop1:
请输入想要查询的电话号码:
stringphonenumber;
phonenumber;
if(con[i].phonenumber==phonenumber)
con[i].age[3]<
break;
if(con[i].phonenumber!
=phonenumber)
cout<
对应该电话号码的联系人不存在。
cin>
gotoloop1;
//按QQ号码查找
loop2:
请输入想要查询的QQ号码:
stringqqnumber;
qqnumber;
if(con[i].qqnumber==qqnumber)
<
break;
if(con[i].qqnumber!
=qqnumber)
对应该QQ号码的联系人不存在。
gotoloop2;
revise()//修改联系人
修改联系人:
intnumber,number2;
请输入你想修改的联系人的姓名:
if(con[i].name==name)
<
请输入你要修改哪一项:
1、姓名2、性别3、年龄4、电话号码5、QQ号码6、生日7、地址8、邮政编码9、电子邮箱"
cin>
switch(number)
case1:
请输入新的姓名:
con[i].name=name;
修改完成!
!
case2:
请输入新的性别:
sex;
con[i].sex=sex;
case3:
请输入新的年龄:
age;
con[i].age=age;
case4:
请输入新的电话号码:
con[i].phonenumber=phonenumber;
case5:
请输入新的QQ号码:
con[i].qqnumber=qqnumber;
case6:
请输入新的生日:
birthday;
con[i].birthday=birthday;
case7:
请输入新的地址:
address;
con[i].address=address;
case8:
请输入新的邮政编码:
postalcode;
con[i].postalcode=postalcode;
case9:
请输入新的电子邮箱:
email;
con[i].email=email;
default:
number2;
switch(number2)
gotoloop;
default:
delet()//删除联系人
删除联系人:
inti;
请输入想要删除的联系人姓名:
for(i=0;
if(con[i].name==name)
{
for(intj=i;
j<
n-1;
j++)
con[j]=con[j+1];
n--;
该联系人已被删除。
该联系人没有记录,请重新输入。
out()//退出
《1》继续操作;
《2》退出系统。
$$$$$$$$$$$$$$$
(1)添加联系人$$$$$$$$$$$$$$$"
<
$$$$$$$$$$$$$$$
(2)显示联系人$$$$$$$$$$$$$$$"
$$$$$$$$$$$$$$$(3)找查联系人$$$$$$$$$$$$$$$"
$$$$$$$$$$$$$$$(4)修改联系人$$$$$$$$$$$$$$$"
$$$$$$$$$$$$$$$(5)删除联系人$$$$$$$$$$$$$$$"
$$$$$$$$$$$$$$$(6)退出$$$$$$$$$$$$$$$"
data.add();
data.display();
data.search();
data.revise();
data.delet();
data.out();
break;
******************************************************"
********************欢迎你的使用!
********************"
exit(0);
}}
五、运行结果及说明
六、设计体会
包括如下内容:
1上机过程中出现的问题及其解决方案
A程序运行的结果有时不是我预期的效果,经过反复优化程序最总达到了预期效果,得到了我想
B对链表和文件操作不熟练
通过反复的看书,牢记基本的处理方法,再在实践中不断总结并与书上例题比较,慢慢掌握起规律
2.程序中可以改进的地方说明
可以再增添如爱好,特长等等。
3.程序中可以扩充的功能及设计实现假象
在本设计中我只涉及到了老师的基本要求(),程序中还可以增添其他功能,如,按年龄排序,地址分类等功能。
设计人:
刘海燕
2011年7月8日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 课程设计 报告 通讯录 管理程序