C++职工工资管理源代码_第1页
C++职工工资管理源代码_第2页
C++职工工资管理源代码_第3页
C++职工工资管理源代码_第4页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.附录源程序#include <stdio.h>#include <stdlib.h>#include <string.h>struct workerchar name30;char ID10;int salary1,salary2,salary3;int dq(struct worker wo);void show();void bc(struct worker wo);void add();void see();void search();void ghcz();void xmcz();void del();void xmsc();void ghsc()

2、;void statistics();void modify();void ghxg();void xmxg();void reserve();void back();void author();struct worker wo100; /保存所有的职工信息int Number=0; /记录总的职工人数void main()int choose=0;while(true)show();printf("tt=>请选择: ");scanf("%d",&choose);system("cls");switch(choose)c

3、ase 0: exit(0);/退出Word 专业资料.break;case 1: add();back();/ 添加职工信息break;case 2: see();back();/ 查看职工信息break;case 3: search();back();/查找职工信息break;case 4: del();back();/ 删除职工信息break;case 5: statistics();back();/ 统计职工工资break;case 6: modify();back();/ 修改职工信息break;case 7:reserve();back();/ 保存数据break;case 8:a

4、uthor();back();/ 作者信息break;default:break;fflush(stdin);getchar();system("cls");int dq(struct worker wo)FILE *fp=NULL;int i=0;fp=fopen("C:/worker.dat","rb");while(fread(&woi,sizeof(struct worker),1,fp)i+;fclose(fp);return i;Word 专业资料.void show()printf("n");

5、printf("t*职工工资管理系统 *nn");printf("t* *nn");printf("t1添加职工信息n");printf("t2查看职工信息n");printf("t3查找职工信息n");printf("t4删除职工信息n");printf("t5统计职工工资n");printf("t6修改职工信息n");printf("t7保存数据n");printf("t8作者信息n");pr

6、intf("t0退出系统nn");printf("t* *n");void bc(struct worker *wo)FILE *fp=NULL;fp=fopen("C:/worker.dat","ab+");fwrite(wo,sizeof(struct worker),1,fp);fclose(fp);/ 添加职工信息void add()int numberTemp=0;int i=0;struct worker temp;printf(" 请输入要添加职工个数:");scanf("

7、;%d",&numberTemp);for(i=0;i<numberTemp;i+)Word 专业资料.printf(" 输入第 %d 个职工信息 n",i+1);printf(" 姓名: ");scanf("%s",);printf(" 工号: ");scanf("%s",temp.ID);printf(" 基本工资: ");scanf("%d",&temp.salary1);printf("

8、职务工资: ");scanf("%d",&temp.salary2);printf(" 津贴: ");scanf("%d",&temp.salary3);woNumber+=temp; /写入到数组bc(&temp); /写入到文件printf(" 添加成功 n");/ 查看职工信息void see()int i=0;printf(" 以下是全部职工n");printf("t姓名 t 工号 t 基本工资 t 职务工资 t 津贴 n");whi

9、le(i<Number)printf("t%st%st%dtt%dtt%dn",,woi.ID,woi.salary1,woi.salary2,woi.salary3);i+;/ 查找职工信息void search()int n=0;printf("1按姓名查找 n");printf("2按工号查找 n");scanf("%d",&n);switch(n)case 1: xmcz();break;case 2: ghcz();break;default: printf("输入

10、错误 !n");break;Word 专业资料.void xmcz()/按姓名查找char name30;int i=0;printf(" 请输入要查找职工姓名:");scanf("%s",name);system("cls");printf("t姓名 t 工号 t 基本工资 t 职务工资 t 津贴 n");for (i=0;i<Number;i+)if (strcmp(name,)=0)printf("t%st%st%dtt%dtt%dn",,w

11、oi.ID,woi.salary1,woi.salary2,woi.salary3);void ghcz()/按工号查找char id10;int i=0;printf(" 请输入要查找职工工号:");scanf("%s",id);system("cls");printf("t姓名 t 工号 t 基本工资 t 职务工资 t 津贴 n");for (i=0;i<Number;i+)if (strcmp(id,woi.ID)=0)printf("t%st%st%dtt%dtt%dn",woi.

12、name,woi.ID,woi.salary1,woi.salary2,woi.salary3);/ 删除职工信息void del()int n=0;printf("1按姓名删除 n");printf("2按工号删除 n");scanf("%d",&n);switch(n)Word 专业资料.case 1: xmsc();break;case 2: ghsc();break;void xmsc()/按姓名删除FILE *fp=NULL;char name30;int i=0;int j=0;printf(" 请输入要

13、删除的职工姓名:");scanf("%s",name);for(i=0;i<Number;i+)if (strcmp(name,)=0)for (j=i;j<Number-1;j+)woj=woj+1;Number-;/ 将剩余数据写入文件擦除以前的数据fp=fopen("C:/worker.dat","wb");for (i=0;i<Number;i+)fwrite(&woi,sizeof(struct worker),1,fp);fclose(fp);printf("

14、删除成功 ;n");void ghsc()/ 按工号删除FILE *fp=NULL;char id60;int i=0;int j=0;printf(" 请输入要删除的职工工号:");Word 专业资料.scanf("%s",id);for(i=0;i<Number;i+)if (strcmp(id,woi.ID)=0)for (j=i;j<Number-1;j+)woj=woj+1;Number-;/ 将剩余数据写入文件擦除以前的数据fp=fopen("C:/worker.dat","wb"

15、);for (i=0;i<Number;i+)fwrite(&woi,sizeof(struct worker),1,fp);fclose(fp);printf(" 删除成功 ;n");/ 统计职工工资void statistics()int i=0;double s=0.0;double sum100;for(i=0;i<Number;i+)sumi=woi.salary1+woi.salary2+woi.salary3;printf("%s的总工资为:%fn",,sumi);for(i=0;i<Number;

16、i+)s+=sumi;printf(" 平均工资为:%fn",s/Number);/ 修改职工信息void modify()int mode=0;printf(" 请选择修改查找方式n");Word 专业资料.printf("1按姓名查找修改n");printf("2按工号查找修改n");scanf("%d",&mode);switch(mode)case 1: xmxg();break;case 2: ghxg();break;default: printf("输入错误 !n

17、");break;void xmxg()/按姓名修改FILE *fp=NULL;char name30;int i=0;printf(" 请输入要修改的职工姓名:");scanf("%s",name);for (i=0;i<Number;i+)if (strcmp(name,);elsebreak;printf("t 姓名 t 工号 t 基本工资 t 职务工资 t 津贴 n"); printf("t%st%st%dtt%dtt%dn",,woi.ID,woi.sala

18、ry1,woi.salary2,wo i.salary3);printf(" 请重新输入该职工信息");printf(" 姓名: ");scanf("%s",);printf(" 工号: ");scanf("%s",woi.ID);printf(" 基本工资: ");scanf("%d",&woi.salary1);printf(" 职务工资: ");scanf("%d",&woi.s

19、alary2);printf(" 津贴: ");scanf("%d",&woi.salary3);/ 信息修改后重新更新文件里面的数据以保持数据一致性fp=fopen("C:/worker.dat","wb");for (i=0;i<Number;i+)Word 专业资料.fwrite(&woi,sizeof(struct worker),1,fp);fclose(fp);void ghxg()/按工号修改FILE *fp=NULL;char id30;int i=0;printf("

20、; 请输入要修改的职工工号:");scanf("%s",id);for (i=0;i<Number;i+)if (strcmp(id,woi.ID);elsebreak;printf("t 姓名 t 工号 t 基本工资 t 职务工资 t 津贴 n"); printf("t%st%st%dtt%dtt%dn",,woi.ID,woi.salary1,woi.salary2,wo i.salary3);printf(" 请重新输入该职工信息");printf(" 姓名: ");printf(" 姓名: ");scanf("%s",);printf(" 工号: ");scanf("%s",woi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论