高校人事管理系统C++程序设计.docx
《高校人事管理系统C++程序设计.docx》由会员分享,可在线阅读,更多相关《高校人事管理系统C++程序设计.docx(19页珍藏版)》请在冰豆网上搜索。
高校人事管理系统C++程序设计
江苏大学
课程设计报告
课程设计名称:
C++程序设计
系别:
三系
学生姓名:
班级:
学号:
成绩:
指导教师:
开课时间:
2011-2012学年二学期
高校人事管理系统
一、课程设计目的
*******************************************************************
二、课程设计内容
*******************************************************************
三、高校人事管理系统概要设计
*******************************************************************
四、高校人事管理系统详细设计与实现
********************************************************************
五、总结
********************************************************************
一.课程设计目的
本课程设计是在学习面向对象基本理论之后的实践教学环节。
该实践教学是软件设计的综合训练,包括问题分析、总体结构设计、用户界面设计、程序设计基本技能和技巧。
要求学生在设计中逐步提高程序设计能力,培养科学的软件工作方法。
学生通过课程设计在下述各方面得到锻炼:
(1)能根据实际问题的具体情况,结合面向对象的基本理论和基本技巧,正确分析问题,并能设计出解决问题的有效算法与程序。
(2)提高程序设计和调试能力。
学生通过上机实习,验证自己设计的算法和程序的正确性。
学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改,进一步提高程序设计水平。
二.课程设计内容
职工信息管理系统
建立一个职工信息管理系统,对于普通员工只能查询和修改自己的详细信息和查询其他员工的简单信息,对于人事部门人员可以查询、修改、增加所有职工的详细信息(但不包含修改工资),对于财务部门人员可以查询所有职工的详细信息,和修改职工的工资。
(1)进入系统需要密码验证
(2)具有简单的菜单功能。
(不同类型的员工的菜单形式不同)
(3)能够按要求完成职工信息的增加,删除,查询和更新相关信息
(4)对程序源代码要给出各部分的详细注释。
(5)雇员信息以文件的形式存储。
(6)自己根据能力及需要添加相应功能模块,增强模拟系统功能。
三、高校人事管理系统概要设计
四.高校人事管理系统详细设计与实现
高校人事管理系统详细设计:
#include
#include
#include
usingnamespacestd;//用命名空间std中的定义
intN=6;
classIntroduce//定义一个类
{
public:
stringname;//定义类的数据成员
stringinformation;
floatcharge;
Introduce();//声明构造函数
Introduce(stringn,stringi,floatc);
stringget_name();//声明六个成员函数
stringget_information();
floatget_charge();
voidset_name();
voidset_information();
voidset_charge();
friendvoidstorefile(Introduces[],intN);//声明友元存储数据的函数
friendintoutfile(Introduces[]);//声明友元读取数据的函数
};
Introducepx[100];//定义一个对象数组
Introduce:
:
Introduce()
{
name="nam";
information="inf";
charge=8;
}
Introduce:
:
Introduce(stringn,stringi,floatc)
{
name=n;
information=i;
charge=c;
}
stringIntroduce:
:
get_name()
{
returnname;
}
stringIntroduce:
:
get_information()
{
returninformation;
}
floatIntroduce:
:
get_charge()
{
returncharge;
}
voidIntroduce:
:
set_name()
{
cin>>name;
}
voidIntroduce:
:
set_information()
{
cin>>information;
}
voidIntroduce:
:
set_charge()
{
cin>>charge;
}
voidstorefile(Introduces[],intN)//定义存储函数
{
ofstreamoutfile("stud.txt",ios:
:
binary);
if(!
outfile)
{
cerr<<"openerror!
"<abort();
}
for(inti=0;i{
outfile<
outfile<
outfile<
}
outfile.close();
}
intoutfile(Introduces[])//定义读取数据函数
{
ifstreaminfile("stud.txt",ios:
:
binary);
if(!
infile)
{
cerr<<"openerror!
"<abort();
}
for(inti=0;!
infile.eof();i++)
{
infile>>s[i].name;//读取对象的姓名
infile>>s[i].information;//读取对象的个人简介
infile>>s[i].charge;//读取对象的工资
}
infile.close();
returni--;//将其返回值给N
}
voidadd(int&N)//定义添加个人简介和工资的函数
{
for(inti=0;i{
cout<<"\t**********************************************\n";
cout<<"\t**********1.请输入个人姓名:
**********\n";
px[i].set_name();
cout<<"\t**********2.请输入个人简介:
**********\n";
px[i].set_information();
cout<<"\t**********3.请输入个人工资:
**********\n";
px[i].set_charge();
cout<<"\t**********************************************\n";
}
}
voidlook(Introduces[],intN)//定义查询个人简介的函数
{
stringp;
cout<<"请输入要查找员工的姓名:
"<cin>>p;
for(inti=0;i{
if(s[i].get_name()==p)
{
cout<
break;
}
}
if(i>=N)
cout<<"查无此人\n"<}
voidlook2(Introduces[],intN)//定义查询个人工资的函数
{
stringp;
cout<<"请输入要查找员工的姓名:
"<cin>>p;
for(inti=0;i{
if(s[i].get_name()==p)
{
cout<
break;
}
}
if(i>=N)
cout<<"查无此人\n"<}
voidchange(Introduces[],intN)//定义修改个人简介的函数
{
stringp;
cout<<"请输入需要修改信息的个人姓名:
"<cin>>p;
for(inti=0;i{
if(s[i].name==p)
{
stringp1;
cout<<"请输入修改后的个人简介内容:
"<cin>>p1;
s[i].information=p1;//将修改后的信息赋值给原有的成员
break;
}
}
if(i>=N)
cout<<"查无此人\n"<}
voidchange2(Introduces[],int&N)//定义修改个人工资的函数
{
stringp;
cout<<"请输入需要修改工资的个人姓名:
"<cin>>p;
for(inti=0;i{
if(s[i].name==p)
{
floatp1;
cout<<"请输入修改后的工资:
"<cin>>p1;
s[i].charge=p1;//将修改后的工资赋值给原有的成员
break;
}
}
if(i>=N)
cout<<"查无此人\n"<}
voidmenu1()//普通员工的主菜单
{
stringxiaod;
cout<<"请输入身份密码:
"<cin>>xiaod;
if(xiaod=="6")//设置进入密码
{
cout<<"\t**************************************************\n";
cout<<"\t*******1.请选择你的要求:
************\n";
cout<<"\t*******2.添加个人简介和工资的信息:
*****\n";
cout<<"\t*******3.查询个人简介信息:
************\n";
cout<<"\t*******4.修改个人简介信息:
************\n";
cout<<"\t**************************************************\n";
intxiaoc;
cin>>xiaoc;
if(xiaoc==1)
{
add(N);
storefile(px,N);//添加数据后进行保存
}
if(xiaoc==2)
{
N=outfile(px);//在查找前打开文件
look(px,N);
}
if(xiaoc==3)
{
N=outfile(px);
change(px,N);
storefile(px,N);//修改后要保存
}
if(xiaoc!
=1&&xiaoc!
=2&&xiaoc!
=3)
cout<<"选择有误,请退出。
"<}
else
cout<<"身份密码有误,请退出。
"<}
voidmenu2()//人事部门的主菜单
{
stringxiaod;
cout<<"请输入身份密码:
"<cin>>xiaod;
if(xiaod=="6")
{
cout<<"\t**********************************************************\n";
cout<<"\t**********1.请选择你的要求***********\n";
cout<<"\t**********2.添加个人简介和工资的信息***********\n";
cout<<"\t**********3.查询个人简介信息***********\n";
cout<<"\t**********4.修改个人简介信息***********\n";
cout<<"\t**********5.查询个人工资的信息***********\n";
cout<<"\t**********************************************************\n";
intxiaoc;
cin>>xiaoc;
if(xiaoc==1)
{
add(N);
storefile(px,N);
}
if(xiaoc==2)
{
N=outfile(px);
look(px,N);
}
if(xiaoc==3)
{
N=outfile(px);
change(px,N);
storefile(px,N);
}
if(xiaoc==4)
{
N=outfile(px);
look2(px,N);
}
if(xiaoc!
=3&&xiaoc!
=2&&xiaoc!
=1&&xiaoc!
=4)
cout<<"选择有误,请退出。
"<}
else
cout<<"身份密码有误,请退出。
"<}
voidmenu3()//财政部门的主菜单
{
stringxiaod;
cout<<"请输入身份密码:
"<cin>>xiaod;
if(xiaod=="6")
{
cout<<"\t***************************************************************\n";
cout<<"\t********1.请选择你的要求*********\n";
cout<<"\t********2.增加个人简介和工资的信息*********\n";
cout<<"\t********3.查询个人简介信息*********\n";
cout<<"\t********4.修改个人简介信息*********\n";
cout<<"\t********5.查询个人工资*********\n";
cout<<"\t********6.修改个人工资*********\n";
cout<<"\t***************************************************************\n";
intxiaoc;
cin>>xiaoc;
if(xiaoc==1)
{
add(N);
storefile(px,N);
}
if(xiaoc==2)
{
N=outfile(px);
look(px,N);
}
if(xiaoc==3)
{
N=outfile(px);
change(px,N);
storefile(px,N);
}
if(xiaoc==4)
{
N=outfile(px);
look2(px,N);
}
if(xiaoc==5)
{
N=outfile(px);
change2(px,N);
storefile(px,N);
}
if(xiaoc!
=2&&xiaoc!
=3&&xiaoc!
=4&&xiaoc!
=1&&xiaoc!
=5)
cout<<"选择有误,请退出"<}else
cout<<"身份密码有误,请退出。
"<}
voidshenfen()//定义识别身份的函数
{
cout<<"\t******************************************************************\n";
cout<<"\t**********1.请选择你的身份****************\n";
cout<<"\t**********2.普通员工****************\n";
cout<<"\t**********3.人事部门****************\n";
cout<<"\t**********4.财政部门****************\n";
cout<<"\t******************************************************************\n";
intxiaob;
cin>>xiaob;
if(xiaob==1)
{
menu1();
}
if(xiaob==2)
{
menu2();
}
if(xiaob==3)
{
menu3();
}
if(xiaob!
=1&&xiaob!
=2&&xiaob!
=3)
cout<<"身份有误,请退出。
";
}
intmain()
{
cout<<"\t****************欢迎进入职工信息管理系统***********************\n";
cout<<"\t**********所有的密码均为职工工号,请输入:
*************\n";
stringxiaoa;
cout<<"\t**********请输入密码:
*****************************\n";
cin>>xiaoa;//设置进入系统的密码
if(xiaoa=="6")
{
shenfen();
}
else
cout<<"密码错误"<return0;
}
高校人事管理系统实现:
五.总结
从一开始的不会做到尝试着去做,到最后的顺利完成,经过一个多星期的编写修改,不断的完善,从而编写出另自己满意的程序。
虽不是很完美,但也很满足了。
从这一个星期中,不仅知道事情是做出来的,不是等就会完事的,而且也对这门课程的学习有了进一步的认识。
做事情不要怕,要自信。
课程设计的目的本就是促使我们去查找相关资料,自己动手,自己查找,学会学习,学会如何更好的取舍。
从陌生到熟悉,到运用自如,目的也就达到了。
所以,不要怕,要自信,相信自己可以完成。
困难是解决的,不是等着困难就会自己解决的。
而且老师同学都会给予很大的帮助,所以要知道自己不是一个人,要学会勇敢的面对。
事在人为,天道酬勤。
付出就会有收获,不付出的收获只会像雾中的花,看不清,更是抓不住。
相信自己,加油,记住不是你一个人在面对,有的是老师和同学的帮助,不怕困难大,只会怕不敢面对的人。
相信自己,加油。
成功是属于爱尝试探索的人,不会去找寻坐等机会的人。
事在人为,天道酬勤,放手去做,加油,相信自己会成功。