则所有数据之间没有分隔号。
达不到分别存储各个数据的目的。
1.系统界面
进入程序菜单,界面如图
2.录入界面
3.查询界面
文件中没有查询在对象
3.删除界面
4.文件已经删除
结果分析
设计特点:
在输入信息的时候先选择你要输入的职工类型,然后有提示输入职工的个数,逐个输入即可,在输入过程中,系统会自动将用户输入的信息存储到相应的文件中。
不过此系统没有修改用户信息的功能,只能查询用户信息和删除信息。
总结
通过这次对《高校工资管理系统》的设计,我体会到面向对象程序设计的特点,多态性,封装性,继承性,并掌握了一定的编程技巧,拓展了思维,提升了自己解决实际问题的能力。
虽然对文件和多态的理解还很肤浅,但是我学到了很多平时学不到的东西。
通过这次课程设计,深深体会到我对很多的专业知识还不了解,同时也把我在学这门课程的所存在的弊端暴露出来了,这就促使我要更多的阅读课外书籍,学到更多的专业知识,使自己得到不断的提高。
最后,我要衷心感谢老师和同学在我的设计过程中给予我的极大帮助,使我能够及时、顺利地完成此次的课程设计。
源代码
#include
#include
#include
#include
inti;
classEmployee
{
public:
charname[20];
intnum;
voiddisplay()
{
cout<<"姓名:
";cin>>name;
cout<<"编号:
";cin>>num;
}
};
classTeacher:
publicEmployee
{
public:
intscore;
inttime;
Teacher(ints=1000){score=s;}
voiddisplay1()
{
cout<<"请输入教师的";
Employee:
:
display();
cout<<"请输入教师的工作量(课时):
";cin>>time;
}
};
classShiyanyuan:
publicEmployee
{
public:
intscore;
intbuzu;
Shiyanyuan(ints=800,intb=250){score=s;buzu=b;}
voiddisplay1()
{
cout<<"请输入实验员的";
Employee:
:
display();
}
};
classManager:
publicEmployee
{
public:
intscore;
intbutie;
Manager(ints=900,intb=250){score=s;butie=b;}
voiddisplay1()
{
cout<<"请输入行政人员的";
Employee:
:
display();
}
};
classJianzhi1:
publicTeacher,publicShiyanyuan//教师兼职实验员
{
public:
Jianzhi1(ints=1000,intb=250):
Teacher(s=1000),Shiyanyuan(b=250){}
voiddisplay1()
{cout<<"请输入教师兼职实验员的";
Teacher:
:
display();
cout<<"请输入教师兼职实验员的工作量(课时):
";cin>>time;
}
};
classJianzhi2:
publicManager,publicTeacher//行政人员兼职教师
{
public:
intbutie;
Jianzhi2(ints=900,intb=210):
Manager(s=900){butie=b;}
voiddisplay1()
{
cout<<"请输入行政人员兼职教师的";
Teacher:
:
display();
cout<<"请输入行政人员兼职教师的工作量(课时):
";cin>>time;
}
};
Teachert[100];
Shiyanyuans[100];
Managerm[100];
Jianzhi1j[100];
Jianzhi2j2[100];
voidshow()
{cout<<"请输入你要录入的对象:
"<cout<<"1:
教师"<cout<<"2:
实验员"<cout<<"3:
行政人员"<cout<<"4:
教师兼职实验员"<cout<<"5:
行政人员兼职教师"<cout<<"6:
退出录入"<cout<<"请选择:
";}
voidjiaoshiluru()//教师录入
{
ofstreamoutfile("教师.txt",ios:
:
app);
if(outfile.fail())
{
cout<<"openerror!
"<exit
(1);
}intb;
cout<<"请选择你要录入教师的个数:
";cin>>b;
for(i=0;i
{
t[i].display1();
outfile<}
outfile.close();
}
voidshiyuanyuanluru()//实验员录入
{
ofstreamoutfile("实验员.txt",ios:
:
app);
if(outfile.fail())
{
cout<<"openerror!
"<exit
(1);
}intb;
cout<<"请输入你要录入实验员的个数:
";cin>>b;
for(i=0;i
{
s[i].display1();
outfile<
}
}
voidManagerluru()//行政人员录入
{
ofstreamoutfile("行政人员.txt",ios:
:
app);
if(outfile.fail())
{
cout<<"openerror!
"<exit
(1);
}intb;
cout<<"请输入你要录入行政人员的个数:
";cin>>b;
for(i=0;i
{
m[i].display1();
outfile<}
}
voidjianzhi1luru()//教师兼职实验员录入
{
ofstreamoutfile("教师兼职实验员.txt",ios:
:
app);
if(outfile.fail())
{
cout<<"openerror!
"<exit
(1);
}intb;
cout<<"请输入你要录入教师兼职实验员的个数:
";cin>>b;
for(i=0;i
{
j[i].display1();
outfile<:
num<<""<:
name<<""<:
score<<""<}
outfile.close();
}
voidjianzhi2luru()//行政人员兼职教师录入
{
ofstreamoutfile("行政人员兼职教师.txt",ios:
:
app);
if(outfile.fail())
{
cout<<"openerror!
"<exit
(1);
}intb;
cout<<"请输入你要行政人员兼职教师的个数";cin>>b;
for(i=0;i
{
j2[i].display1();
outfile<:
num<<""<:
name<<""<:
score<<""<:
time<}
}
voidxinxiluru()//信息录入
{
intc;
for(i=0;;i++)
{
show();cin>>c;
if(c==6){cout<<"退出录入成功。
"<else
switch(c)
{case1:
jiaoshiluru();break;
case2:
shiyuanyuanluru();break;
case3:
Managerluru();break;
case4:
jianzhi1luru();break;
case5:
jianzhi2luru();break;
default:
{cout<<"上一次输入错误。
"<}
}
}
voidshow2()
{
cout<<"请输入你要查询的对象:
"<cout<<"1:
教师查询"<cout<<"2:
实验员查询"<cout<<"3:
行政人员查询"<cout<<"4:
教师兼职实验员查询"<cout<<"5:
行政人员兼职教师查询"<cout<<"6:
退出查询"<cout<<"请选择一个操作:
";
}
voidjiaoshichaxun()
{
ifstreaminfile("教师.txt",ios:
:
in);
charnam[20];intk,n,r,bh;
cout<<"1、按编号查询"<cout<<"2、按姓名查询"<cout<<"请输入您的选择:
";cin>>r;
if(r==1)
{
cout<<"请输入你要查询教师的编号:
";cin>>bh;
for(i=0,n=0;i<100;i++)
{
infile>>t[i].num>>t[i].name>>t[i].score>>t[i].time;
if(t[i].num==0)break;
if(t[i].num==bh)
{
n++;k=t[i].score+(t[i].time-120)*20;
cout<<"教师:
"<}
}
if(n==0)cout<<"没有你要查询的教师。
"<infile.close();
}
if(r==2)
{
cout<<"请输入你要查询教师的名字:
";cin>>nam;
for(i=0,n=0;i<100;i++)
{
infile>>t[i].num>>t[i].name>>t[i].score>>t[i].time;
if(t[i].num==0)break;
if(strcmp(t[i].name,nam)==0)
{
n++;k=t[i].score+(t[i].time-120)*20;
cout<<"教师:
"<}
}
if(n==0)cout<<"没有你要查询的教师。
"<infile.close();
}
}
voidshiyanyuanchaxun()//实验员查询
{
fstreamiofile("实验员.txt",ios:
:
in);
intk,n,r,bh;charnam[20];
cout<<"1、按编号查询"<cout<<"2、按姓名查询"<cout<<"请输入您的选择:
";cin>>r;
if(r==1)
{
cout<<"请输入你要查询实验员的编号:
";cin>>bh;
for(i=0,n=0;i<100;i++)
{
iofile>>s[i].num>>s[i].name>>s[i].score>>s[i].buzu;
if(t[i].num==0)break;
if(s[i].num==bh)
{
n++;k=s[i].score+s[i].buzu;
cout<<"实验员:
"<
}
}
if(n==0)cout<<"没有你要查询的实验员。
"<iofile.close();
}
if(r==2)
{
cout<<"请输入你要查询实验员的名字:
";cin>>nam;
for(i=0,n=0;i<100;i++)
{
iofile>>s[i].num>>s[i].name>>s[i].score>>s[i].buzu;
if(t[i].num==0)break;
if(strcmp(s[i].name,nam)==0)
{
n++;k=s[i].score+s[i].buzu;
cout<<"实验员:
"<
}
}
if(n==0)cout<<"没有你要查询的实验员。
"<iofile.close();
}
}
voidManagerchaxun()//行政人员查询
{
ifstreaminfile("行政人员.txt",ios:
:
in);
intk,n,r,bh;charnam[20];
cout<<"1、按编号查询"<cout<<"2、按姓名查询"<cout<<"请输入您的选择:
";cin>>r;
if(r==1)
{
cout<<"请输入你要查询的行政人员的编号:
";cin>>bh;
for(i=0,n=0;i<100;i++)
{