教师工资管理系统
文章转自王牌软件
站长推荐:NSetup一键部署软件
一键式完成美化安装包制作,自动增量升级,数据统计,数字签名。应对各种复杂场景,脚本模块化拆分,常规复杂的脚本代码,图形化设置。无需专业的研发经验,轻松完成项目部署。(www.nsetup.cn)
只回答业务咨询
站长推荐:NSetup一键部署软件
一键式完成美化安装包制作,自动增量升级,数据统计,数字签名。应对各种复杂场景,脚本模块化拆分,常规复杂的脚本代码,图形化设置。无需专业的研发经验,轻松完成项目部署。(www.nsetup.cn)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 |
#include<iostream> #include<string> using namespace std; #define S 1200//S表示固定工资 #define XJ 1500//行政一般人员基本工资 #define XJ1 1600//科级以上人员基本工资 #include<string> class CStaff{ public: string name; int number; string sex; int salary; int year; void SetNo(){ cout<<"请输入职工号(整数):"; cin>> number; } int GetNo(){ return number;} void SetName(){ cout<<"请输入职工姓名:"; cin>>name;} string GetName(){ return name;} void SetSex(){ cout<<"请输入性别(男或女):"; B: cin>>sex; if(sex!="男"&&sex!="女"){ cout<<"输入错误,请重新输入:"; goto B;}} string GetSex(){ return sex;} void SetYear(){ cout<<"请输入职工工龄(整年):"; cin>>year; } int GetYear(){ return year;} virtual int GetSalary(){ return salary;} }; class CTempStaff:public CStaff{//临时工类 public: string job; CTempStaff(){ cout<<" 临时人员"<<endl<<endl; job="临时人员";} int GetSalary(){ //salary=S; return S;} friend ostream& operator << (ostream& output,CTempStaff& c){ // ostream m; output<<endl<<"姓名:"<<c.GetName()<<" 职工号:"<<c.GetNo()<<" 性别:"<<c.GetSex()<<" 工作:"<<c.job<<" 工龄:"<<c.GetYear()<<" 工资:"<<c.GetSalary()<<endl; return output; } }; class CAdministrator:public CStaff{ public: CAdministrator(){ cout<<" 行政人员"<<endl<<endl;} string job; void SetJob (){ cout<<"请输入职称(一般人员或科级以上人员):"; cin>>job; } int GetSalary(){ if(job=="一般人员"){ salary=XJ+year*20;} else{ salary=XJ1+year*20+20;} return salary;} friend ostream& operator << (ostream& output,CAdministrator&c) { output<<endl<<"姓名:"<<c.GetName()<<" 职工号:"<<c.GetNo()<<" 性别:"<<c.GetSex()<<" 工作:"<<c.job<<" 工龄:"<<c.GetYear()<<" 工资:"<<c.GetSalary()<<endl; return output;} }; class CTeacher:public CStaff{ public: CTeacher(){ cout<<" 教师人员"<<endl<<endl;} int stn;//stn表示学生数目 int ks; string job; int fee;//fee表示学时费 void SetJob (){ cout<<"请输入职称(讲师\教授或副教授\博导):"; A:cin>>job; if(job=="讲师"){ fee=100;} else if(job=="教授或副教授"){ fee=150;} else if(job=="博导"){ fee=200;} else { cout<<"输入错误,请重新输入:"; goto A; } } void SetStn(){ cout<<"请输入学生数:"; cin>>stn;} void SetKs(){ cout<<"请输入上课课时数"; cin>>ks;} int GetSalary(int j=1500,int ks=0,int sb=500,int bb=500){//j 表示基本工资,ks表示课时,sb表示硕士补习费,bb表示博士补习费 salary=j+200*ks+year*20+sb+bb; return salary;} friend ostream& operator << (ostream& output,CTeacher&c) { cout<<endl<<"姓名:"<<c.GetName()<<" 职工号:"<<c.GetNo()<<" 性别:"<<c.GetSex()<<" 工作:"<<c.job<<" 学生数:"<<c.stn<<" 课时数:"<<c.ks<<" 工龄:"<<c.GetYear()<<" 工资:"<<c.GetSalary(1500,23,3)<<endl; return output; } }; int main(){ cout<<endl<<endl<<" ***教师工资管理系统***"<<endl<<endl; hh: cout<<" 1 临时人员 2 行政人员 3 教师人员"<<''<<endl<<endl<<"请选择:"; int o; cin>>o; if(o==1){ CTempStaff c1; c1.SetName(); c1.SetNo(); c1.SetSex(); c1.SetYear(); cout<<c1<<endl; cout<<"操作完成请重新选择:"<<endl; goto hh; } else if(o==2){ CAdministrator t1; t1.SetName(); t1.SetNo(); t1.SetSex(); t1.SetYear(); t1.SetJob(); cout<<t1<<endl; cout<<"操作完成请重新选择:"<<endl; goto hh;} else if(o==3){ CTeacher c2; c2.SetName(); c2.SetNo(); c2.SetSex(); c2.SetYear(); c2.SetStn(); c2.SetKs(); c2.SetJob(); cout<<c2<<endl<<endl; cout<<"操作完成请重新选择:"<< endl; goto hh;} else{ cout<<"选择错误请重新选择:"; goto hh;} system("pause"); } |
学习日记,兼职软件设计,软件修改,毕业设计。
本文出自 学习日记,转载时请注明出处及相应链接。
本文永久链接: https://www.softwareace.cn/?p=235