#includestdio.h#includeassert.h#includestring.h#includestdlib.h#includeconio.htypedefstructworker{intID;//员工工号charname[20];//员工姓名intmoy1;//员工底工资intmoy2;//奖金intmoy3;//被扣金额intmoy4;//实际工资}worker;intj=0,total;chark;FILE*fp;voidInput();//voidAdd();//voidSurf();//voidSave();//保存数据voidChange();//voidDel();//workerwrk[50];intmain()//主界面系统{charch;system(cls);printf(\n\t\t\t\t职工工资系统\n\n);printf(\n\t\t\t\t班级:\n);printf(\n\n\t\t\t\t制作人:\n);printf(\n\n\t\t\t\t学号:n\n\n);system(pause);system(cls);do{printf(\n\t\t\t欢迎进入职工管理系统\n\n\n);printf(\n\t\t\t1.输入职工信息\n);printf(\n\t\t\t2.新增职工信息\n);printf(\n\t\t\t3.更改职工信息\n);printf(\n\t\t\t4.删除职工信息\n);printf(\n\t\t\t5.查询职工工资\n);printf(\n\t\t\t6.保存职工信息\n);printf(\n\t\t\t0.退出职工管理系统\n);printf(\n\n\n请输入你需要选项的数字:);scanf(%d,&ch);switch(ch){case1:system(cls);Input();break;case2:system(cls);Add();break;case3:system(cls);Change();break;case4:system(cls);Del();break;case5:system(cls);Surf();break;case6:system(cls);Save();break;case0:system(cls);printf(\t\t感谢使用职工管理系统\n);exit(0);default:printf(输入有误,请在数字0—6之间输入\n);}}while(1);fflush(stdin);return0;}voidInput()//输入职工信息{do{printf(\n\t\t\t请输入职工的信息:\n);printf(\n\t\t\t职工工号:);scanf(%d,&wrk[j].ID);printf(\n\t\t\t职工姓名:);scanf(%s,wrk[j].name);printf(\n\t\t\t职工底工资:);scanf(%d,&wrk[j].moy1);printf(\n\t\t\t职工奖金:);scanf(%d,&wrk[j].moy2);printf(\n\t\t\t职工被扣金额:);scanf(%d,&wrk[j].moy3);wrk[j].moy4=wrk[j].moy1+wrk[j].moy2-wrk[j].moy3;printf(\n\t\t\t职工实际工资:%d\n,wrk[j].moy4);j++;total=j;printf(\n\n\n\n是否继续?\n是请按1;否请按0.\n\n请选择:);fflush(stdin);while(1){fflush(stdin);scanf(%c,&k);if(k=='0'||k=='1')break;printf(输入有误\n请重新输入:);}}while(k=='1');fflush(stdin);return;}voidSave()//职工信息保存{fp=fopen(in.txt,a);assert(fp);for(j=0;jtotal;j++){fprintf(fp,%d%s%d%d%d%d\n,wrk[j].ID,wrk[j].name,wrk[j].moy1,wrk[j].moy2,wrk[j].moy3,wrk[j].moy4);}printf(职工信息保存成功\n);system(pause);fclose(fp);return;}voidAdd()//添加职工信息{do{printf(当前有%d个职工的信息\n,total);printf(请输入要增加的职工的信息:);printf(\n\t\t\t职工工号:);scanf(%d,&wrk[j].ID);fflush(stdin);printf(\n\t\t\t职工姓名:);scanf(%s,wrk[j].name);printf(\n\t\t\t职工底工资:);scanf(%d,&wrk[j].moy1);printf(\n\t\t\t职工奖金:);scanf(%d,&wrk[j].moy2);printf(\n\t\t\t职工被扣金额:);scanf(%d,&wrk[j].moy3);wrk[j].moy4=wrk[j].moy1+wrk[j].moy2-wrk[j].moy3;printf(\n\t\t\t职工实际工资:%d\n,wrk[j].moy4);j++;total+=j;printf(是否继续?\n是请按1;否请按0.\n\n请选择:);fflush(stdin);while(1){scanf(%c,&k);if(k=='0'||k=='1')break;printf(输入有误\n请重新输入:);}}while(k=='1');fflush(stdin);return;}voidChange()//更改职工信息{charch[10];fflush(stdin);printf(\n\t\t\t\t更改职工信息\n);printf(请输入职工的姓名:);do{scanf(%s,&ch);for(j=0;jtotal;j++){if(!strcmp(wrk[j].name,ch)){printf(请输入职工工号:);fflush(stdin);scanf(%d,&wrk[j].ID);printf(请输入职工姓名:);fflush(stdin);gets(wrk[j].name);printf(请输入职工底工资:);scanf(%d,&wrk[j].moy1);printf(请输入职工奖金:);scanf(%d,&wrk[j].moy2);printf(请输职工被扣金额:);scanf(%d,&wrk[j].moy3);wrk[j].moy4=wrk[j].moy1+wrk[j].moy2-wrk[j].moy3;printf(职工实际工资:%d\n,wrk[j].moy4);printf(是否继续?\n是请按1;否请按0.\n\n请选择:);fflush(stdin);}while(1){scanf(%c,&k);if(k=='1'||k=='0')break;printf(输入有误\n请重新输入:);}}}while(k=='1');fflush(stdin);system(pause);system(cls);return;}voidDel()//删除职工信息{charch[10];do{printf(\n\t\t\t\t删除职工信息\n);printf(请输入职工姓名:);fflush(stdin);gets(ch);for(j=0;jtotal;j++){if(!strcmp(wrk[j].name,ch)){for(j=j;jtotal;j++){wrk[j]=wrk[j+1];}}}printf(是否继续?\n是请按1;否请按0.\n\n请选择:);fflush(stdin);while(1){scanf(%c,&k);if(k=='1'||k=='0'){break;}printf(输入有误\n请重新输入:);}}while(k=='1');fflush(stdin);return;}voidSurf()//查询职工信息{charch[4];fflush(stdin);do{printf(\n\t\t\t查询职工信息\n);printf(请输入职工姓名:);fflush(stdin);gets(ch);for(j=0;jtotal;j++){if(!strcmp(wrk[j].name,ch)){printf(职工工号:%d\n,wrk[j].ID);printf(职工姓名:%s\n,wrk[j].name);printf(职工底工资:%d\n,wrk[j].moy1);printf(职工奖金:%d\n,wrk[j].moy2);printf(职工被扣工资:%d\n,wrk[j].moy3);printf(职工实际工资:%d\n,wrk[j].moy4);}printf(是否继续?\n是请按y;否请按n.\n\n请选择:);fflush(stdin);while(1){scanf(%c,&k);if(k=='y'||k=='n')break;printf(输入有误\n请重新输入:);}}}while(k=='y');fflush(stdin);system(pause);system(cls);return;}