附录
本系统有三个源程序文件构成,分别为system.h, system.cpp及main.cpp。同时含有三个系统文件,分别为info.txt, name.txt及salary.txt,且全部存放在D盘根目录下,请勿随意移动或修改系统文件。当会员正式进入系统, info.txt是先清空后用来存储会员输入的信息,最多含有编号、姓名、职务及月份。当仅会员注册时,会将编码及密码存储到name.txt中。当仅会员登入的编号及密码进行匹配时,会打开输入文件name.txt,提取编号及密码,进行匹配。当仅当输入工资数据时,会将工资、编号、姓名、职务、月份存储到salary.txt中。当仅当查询工资信息时,会打开salary.txt,提取编号、姓名、职务、月份及工资。
该系统是一个只适合5种及5种职务的工资管理系统。并将职务分为技术人员、销售人员、文秘、技术经理和销售经理,其代号分别为1,2,3,4,5。
雇员编号以整型变量存储,编号所取范围在-65536至65535之内(包括边界值),首位数字表示相应的职务代码。
该系统能力有限,请根据指示严格输入相应字符!
程序清单
Main 函数
#include \#include \static void systemhead(); static void systembody(); static void technician(); static void salesman(); static void secretary(); static void techmanager(); static void salesmanager(); using namespace std;
void main() {
systemhead(); //调用systemhead静态全局函数
}
cout<<\查询工资\cout<<\输入工资数据\cout<<\退出系统!\\n\\n\cout<<\请选择您需要的操作!!\\n\while(1) {
cin>>xuanze; if(xuanze==1) {
employee a; cout< cout<<\输入工资数据请按数字2,退出系统请按数字0!\\n\\n\ } //查询工资信息 if(xuanze==2) { } employee a; a.info(); a.recordinfo(); //输入处理工资数据并暂时记录 systembody(); //调用systembody静态全局函数 cout<<\查询工资请按数字1,退出系统请按数字0!\\n\\n\ int xuanze; } if(xuanze==0)exit(0); static void salesmanager() { } static void techmanager() { } static void secretary() { } Secretary a3; float bon; cout<<\请输入这个月的额外奖励:\cin>>bon; a3.setbonus(bon); a3.countSalary(); a3.recordSalary(); TechManager a4; int gra; cout<<\请输入这个月的评级:\ //1,2,3三个等级 cin>>gra; a4.setgrade(gra); a4.countSalary(); a4.recordSalary(); SalesManager a5; float sum; cout<<\请输入整个月的总营业额:\cin>>sum; a5.setsalesnum(sum); a5.countSalary(); a5.recordSalary(); static void salesman() { } static void technician() { } static void systembody() { ifstream indata(\if(indata==NULL) exit(0); int num; char na[25]; int sta; indata>>num>>na>>sta; //职务代号分别为1,2,3,4,5 switch(sta) { Technician a1; float hour; cout<<\请输入整个月的工作时间:\cin>>hour; a1.setHour(hour); a1.countSalary(); a1.recordSalary(); Salesman a2; float sum; cout<<\请输入整个月的营业额:\cin>>sum; a2.setsalesnum(sum); a2.countSalary(); a2.recordSalary(); } } case 1:technician();break; case 2:salesman();break; case 3:secretary();break; case 4:techmanager();break; case 5:salesmanager();break; default:cout<<\职务代号错误!\\n请重新输入!\ static void systemhead() { \\n\ cin>>num; cout<<\请输入密码(6及6位字符以下):\\n\ ifstream indata(\ if(indata==NULL) cin>>secret; //输入编号及密码 char x,y='y'; int num; char secret[6]; while(y) { cout<<\系统会员请输入'y',非系统会员请输入‘n’\\n\ cin>>x; if(x) cout<<\请输入编号(首位为职务代号且为不超过5位数的整数): { { cout<<\文件打开失败!请联系管理员!\\n\exit(0); //文件没 } int num1;char secret1[6]; indata>>num1; 打开,退出程序