简单的通信管理系统--课程设计cWord文件下载.docx
- 文档编号:13099140
- 上传时间:2022-10-05
- 格式:DOCX
- 页数:22
- 大小:338.79KB
简单的通信管理系统--课程设计cWord文件下载.docx
《简单的通信管理系统--课程设计cWord文件下载.docx》由会员分享,可在线阅读,更多相关《简单的通信管理系统--课程设计cWord文件下载.docx(22页珍藏版)》请在冰豆网上搜索。
同学、朋友等)
具体功能:
1.输入人员信息功能
2.查询人员信息功能
1)能够根据姓名、电话精确查询人员信息
2)能根据地址粗略查询人员信息
3.根据姓名对人员信息排序输出信息
4.根据姓名、电话修改人员信息;
5.根据姓名、电话删除人员信息;
6、显示所有人员信息
三、设计分析
1、算法分析
“简单的通信管理系统”包括六个模块:
输入,查询,按姓名顺序,修改,删除,输出。
其中查询模块中又有按姓名,按电话号码和按地址查询,修改模块又有按电话号码和按名字修改,删除模块也有按电话号码和按名字删除。
这六个模块既相互联系又相互独立。
功能:
定义菜单函数,通过输出函数显示系统功能。
利用switch语句实现多分支选择结构。
算法思路:
switch语句的执行流程是:
首先计算switch后面圆括号中表达式的值,然后用此值依次与各个case的常量表达式比较,若圆括号中表达式的值与某个case后面的常量表达式的值相等,就执行此case后面的语句,执行后遇break语句就退出switch语句。
2、类图
Person
-tel:
string-name:
string
-name:
-sex:
-qq:
-address:
-post:
-type:
+add():
Void
+search():
+sort():
+change():
+del():
+print():
输出菜单menu
ch!
=null
输入操作ch
ch==3
ch==4
ch==5
ch==6
调用排序人员函数:
sort()
break;
调用修改信息函数:
change();
break
调用删除人员函数:
del();
调用输出函数:
display();
Default
退出系统
开始
Y
N
main()
3、流程图
ch==2
ch==1
调用查询人员函数:
search()
调用录入人员函数:
add()
四、程序
#include<
iostream>
fstream>
string>
iomanip>
usingnamespacestd;
#defineM200//可以存信息总量
intN=0;
//人员总量
classPerson
{
public:
Person();
voidadd();
//添加人员信息
voidsearch();
//查询某人员信息
voidsort();
//排序全部人员信息
voidchange();
//修改某人员信息
voiddel();
//删除某人员信息
voiddisplay();
//显示全部人员信息
private:
stringtel,name,sex,qq,address,post,mail,type;
};
///按姓名对人员排序
voidPerson:
:
inti,j;
stringstel,tel[M],sname,ssex,sqq,saddress,spost,smail,stype,name[M],sex[M],qq[M],address[M],post[M],mail[M],type[M];
ifstreaminfile("
f1.txt"
ios:
in);
if(!
infile)
{
cerr<
<
"
openerror"
endl;
exit
(1);
}
for(i=0;
i<
N;
i++)
infile>
>
tel[i];
name[i];
sex[i];
qq[i];
address[i];
post[i];
mail[i];
type[i];
infile.close();
ofstreamoutfile("
out);
outfile)
{
cerr<
exit
(1);
}
//运用直接排序法
for(j=0;
j<
N-1-i;
j++)
if(name[j]>
name[j+1])
{
sname=name[j];
name[j]=name[j+1];
name[j+1]=sname;
stel=tel[j];
tel[j]=tel[j+1];
tel[j+1]=stel;
ssex=sex[j];
sex[j]=sex[j+1];
sex[j+1]=ssex;
sqq=qq[j];
qq[j]=qq[j+1];
qq[j+1]=sqq;
saddress=address[j];
address[j]=address[j+1];
address[j+1]=saddress;
spost=post[j];
post[j]=post[j+1];
post[j+1]=spost;
smail=mail[j];
mail[j]=mail[j+1];
mail[j+1]=smail;
stype=type[j];
type[j]=type[j+1];
type[j+1]=stype;
}
//排序完后重新写进文件和输出
cout<
setw(9)<
outfile<
tel[i]<
"
;
cout<
name[i]<
sex[i]<
qq[i]<
address[i]<
post[i]<
mail[i]<
type[i]<
outfile.close();
cout<
已排序成功!
}
Person:
Person(){}
///添加文件
stringaddtel,addname,addsex,addqq,addaddress,addpost,addmail,addtype;
//----以追加的方式录入信息,直接将信息追加到以前文件的末尾----
app);
N=N+1;
//----依次输入相应的数据,并且追加到之前的文件中去----
请输入您要添加的数据"
cout<
电话:
cin>
addtel;
outfile<
addtel<
"
姓名:
addname;
addname<
性别:
addsex;
addsex<
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 简单 通信 管理 系统 课程设计