职工工资管理系统C程序概要1_第1页
职工工资管理系统C程序概要1_第2页
职工工资管理系统C程序概要1_第3页
职工工资管理系统C程序概要1_第4页
职工工资管理系统C程序概要1_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、/* 职工工资管理小软件 */#include<stdio.h>#include<string.h>#include<conio.h>#include<stdlib.h>#define n 20int nn;/* 函数声明*/void enter();int menu();void input();void output();void search();void search_employeeid();void search_name();void edit();void array();void array_basesalary();void

2、array_postwage();void array_totalwage();void array_yiliaobaoxian();void array_gongjijin();void statistics();void save();void load();void del();void dele();void delname();/* 职工类型定义*/struct employeechar employeeid10;char name10;int sex;int age;float basesalary;float postwage;float yiliaobaoxian;float

3、gongjijin;float totalwage;/* 职工变量定义*/struct employee empn;struct employee replace;struct employee *p=emp;/* 系统主函数*/void main()int c;while(1)printf(" nnnn"); printf(" 欢迎进入职工工资管理系统 nnn");printf(" 1 进入管理系统 nn");printf(" 0 退出 nn");printf(" nnnn");printf(

4、" 请输入你选择: n");scanf("%d",&c);switch(c) case 1: enter(); break; case 0: printf(" 谢谢使用!n"); exit(0); /* 功能:登陆函数,进行密码验证*/void enter() char key10,password10="1"int k=1;printf(" 请输入密码: n");scanf("%s",key);while(k<=3)if(strcmp(password,key

5、)=0)while(1) int a; /system("cls"); a=menu();switch(a) case 1: input();break;case 2: output();break;case 3: search();break;case 4: edit();break;case 5: array();break;case 6: load();statistics();break; case 7: del();break;case 0: printf("nn 谢谢使用!nnnn"); save(); exit(0);else k+;pri

6、ntf(" 输入密码错误!请再次输入:");scanf("%s",key);if(k>2) if(strcmp(password,key)=0) continue;else printf(" 输入密码错误三次,系统将自动退出!n"); exit(0);/*功能: 主菜单函数参数:a 类型:int说明: 变量返回值: a*/int menu()int a ;printf("nn");printf("|*欢迎进入职工工资管理系统*|n");printf("| |n");pr

7、intf("| |n");printf("| 1 输入职工信息 |n");printf("| |n");printf("| 2 职工信息输出 |n"); printf("| |n");printf("| 3 职工信息查询 |n"); printf("| |n"); printf("| 4 修改职工信息 |n"); printf("| |n"); printf("| 5 工资排序 |n"); pri

8、ntf("| |n"); printf("| 6 工资统计 |n"); printf("| |n"); printf("| 7 删除职工信息 |n"); printf("| |n"); printf("| 0 退出 |n"); printf("| |n"); printf("| |n"); printf("|* 电气信息1032 王利波 *|n");printf("nn");printf(&quo

9、t; 请输入你所选择的选项:");scanf("%d",&a);while(a>7|a<0)printf(" error!n"); printf(" 请重新输入你所选择的选项:");scanf("%d",&a);return a;/*功能:职工信息输入*/void input()int c;p=emp;printf(" 进入职工信息输入模块 nnn");printf(" 请输入增加职工的数量: nnn");scanf("%d&q

10、uot;,&nn);for(c=0;c<nn;c+,p+) pc.totalwage=pc.basesalary+pc.postwage-pc.yiliaobaoxian-pc.gongjijin;printf(" 请输入第%d个职工信息:nn",c+1);printf(" 请输入职工号:n");scanf("%s",p->employeeid);if(strcmp(p->employeeid,"0")!=0) printf(" 请输入职工姓名:n");scanf(&q

11、uot;%s",p->name);printf(" 请输入职工性别: n");scanf("%d",&p->sex);printf(" 请输入职工年龄: n");scanf("%d",&p->age);printf(" 请输入职工基本工资:n");scanf("%f",&p->basesalary);printf(" 请输入职工岗位工资:n");scanf("%f",&p

12、->postwage);printf(" 请输入职工医疗保险:n"); scanf("%f",&p->yiliaobaoxian);printf(" 请输入职工公积金: n");scanf("%f",&p->gongjijin); printf(" 职工信息输入完成! nn");elsereturn;save();/*功能:职工信息输出*/void output() int j;load();p=emp; printf(" 进入职工信息输出模块 nnn

13、"); printf("-n");printf("|职工号 |姓名 |性别 |年龄 |基本工资 |岗位工资 |医疗保险 |公积金 |总工资 |n");printf("-n");for(j=0;j<nn;j+)pj.totalwage=pj.postwage+pj.basesalary-pj.yiliaobaoxian-pj.gongjijin;printf("|%8s|%7s|%5d|%5d| %7.2f| %7.2f| %7.2f| %7.2f|%7.2f|n",pj.employeeid,pj.

14、name,pj.sex,pj.age,pj.basesalary,pj.postwage,pj.yiliaobaoxian,pj.gongjijin,pj.totalwage);printf("-n");printf("nn 职工信息输出完成! nn");getchar(); /*功能:职工信息查询*/void search()int j; while(1) printf("*职工信息查询*nnn");printf(" 1 按职工号查询 n");printf(" 2 按职工姓名查询 n");pr

15、intf(" 0 退出该项操作 n");printf("nn");while(1)printf(" 请输入你的选择 n");scanf("%d",&j);if(j>=0&&j<=2)switch(j)case 1:search_employeeid();break;case 2:search_name();break;case 0:return;elseprintf(" 输入错误! nn");printf(" 请再次输入你的选择: nn")

16、;/*功能:按职工号查询函数*/void search_employeeid()char employeeid10;int k,j;p=emp;printf("*按职工号查询职工信息*nnnn");printf(" 请输入要查询职工的职工号: nn");scanf("%s",employeeid);for(k=0;k<nn;k+)if(strcmp(employeeid,p->employeeid)=0)j=k; pj.totalwage=pj.postwage+pj.basesalary-pj.yiliaobaoxian

17、-pj.gongjijin;printf("-n");printf("|职工号 |姓名 |性别 |年龄 |基本工资 |岗位工资 |医疗保险 |公积金 |总工资 |n");printf("|%8s|%7s|%5d|%5d| %7.2f| %7.2f| %7.2f| %7.2f|%7.2f|n",pj.employeeid,,pj.sex,pj.age,pj.basesalary,pj.postwage,pj.yiliaobaoxian,pj.gongjijin,pj.totalwage);printf("-n&q

18、uot;);break; elseprintf(" not foundn");return;/*功能:按职工姓名查询函数*/void search_name()char name10;int flog=0;int f,j;p=emp;printf("*按职工姓名查询职工信息*nnn");printf(" 请输入要查询职工的姓名: nn");scanf("%s",name); for(f=0;f<nn;f+,p+)if(strcmp(name,p->name)=0)j=f; pj.totalwage=pj

19、.postwage+pj.basesalary-pj.yiliaobaoxian-pj.gongjijin; printf("-n");printf("|职工号 |姓名 |性别 |年龄 |基本工资 |岗位工资 |医疗保险 |公积金 |总工资 |n");printf("|%8s|%7s|%5d|%5d| %7.2f| %7.2f| %7.2f| %7.2f|%7.2f|n",pj.employeeid,,pj.sex,pj.age,pj.basesalary,pj.postwage,pj.yiliaobaoxian,pj.

20、gongjijin,pj.totalwage);printf("-n");break;elseprintf(" not found nn"); return;getchar();/*功能:职工信息修改函数*/void edit()char e10;int g=0,j;char flog; p=emp;printf(" 请输入你要修改职工的职工号: n");scanf("%s",e);for(g=0;g<nn;g+) /if(*e=pg.employeeid)if(strcmp(e,p->employee

21、id)=0) j=g; pj.totalwage=pj.postwage+pj.basesalary-pj.yiliaobaoxian-pj.gongjijin; printf("-n"); printf("|职工号 |姓名 |性别 |年龄 |基本工资 |岗位工资 |医疗保险 |公积金 |总工资 |n"); printf("|%8s|%7s|%5d|%5d| %7.2f| %7.2f| %7.2f| %7.2f|%7.2f|n",pj.employeeid,,pj.sex,pj.age,pj.basesalary,pj.

22、postwage,pj.yiliaobaoxian,pj.gongjijin,pj.totalwage); printf("-n"); printf(" 是否要修改该职工信息?y(是)or n(否)?nn"); getchar(); scanf("%c",&flog); if(flog = 'y') printf(" 请输入新姓名:n"); scanf("%s",p->name); printf(" 请输入性别: n"); scanf("

23、;%d",&p->sex); printf(" 请输入年龄: n"); scanf("%d",&p->age); printf(" 请输入基本工资:n"); scanf("%f",&p->basesalary); printf(" 请输入岗位工资:n"); scanf("%f",&p->postwage); printf(" 请输入职工医疗保险:n"); scanf("%f&quo

24、t;,&p->yiliaobaoxian); printf(" 请输入职工公积金: n"); scanf("%f",&p->gongjijin); printf(" 修改职工信息成功! nn"); if(flog = 'n')printf(" 退出该项操作! nn");return;save(); if(g=nn)printf(" not found nnn");return;/*功能:职工工资排列函数*/void array()int j;while

25、(1)printf("*工资排序*nn");printf(" 1 按基本工资排序 nn");printf(" 2 按岗位工资排序 nn"); printf(" 3 按总工资排序 nn"); printf(" 4 按医疗保险排序 nn"); printf(" 5 按公积金排序 nn"); printf(" 0 退出 nn");printf("nnn");while(1) printf(" 请输入你的选择: nn");

26、scanf("%d",&j); if(j>=0&&j<=5) switch(j) case 1: array_basesalary();break; case 2: array_postwage();break; case 3: array_totalwage();break; case 4: array_yiliaobaoxian();break; case 5: array_gongjijin();break; case 0: return; else printf(" 输入错误!nnn"); printf(&qu

27、ot; 请再次输入你的选择:nn"); /*功能:按基本工资排列(选择法)*/void array_basesalary()int i,j,k; p=emp;for(i=0;i<nn-1;i+) k=i;for(j=i+1;j<nn;j+)if(pk.basesalary<pj.basesalary)k=j;if(k!=i) replace=empk;empk=empi;empi=replace; for(j=0;j<nn;j+)pj.totalwage=pj.postwage+pj.basesalary-pj.yiliaobaoxian-pj.gongjij

28、in;printf("-n");printf("|职工号 |姓名 |性别 |年龄 |基本工资 |岗位工资 |医疗保险 |公积金 |总工资 |n");printf("|%8s|%7s|%5d|%5d| %7.2f| %7.2f| %7.2f| %7.2f|%7.2f|n",pj.employeeid,,pj.sex,pj.age,pj.basesalary,pj.postwage,pj.yiliaobaoxian,pj.gongjijin,pj.totalwage);printf("-n");/*功能:

29、按岗位工资排列(冒泡法)*/void array_postwage()int i,j;p=emp; for(i=0;i<nn;i+)for(j=0;j<nn-i;j+) if(pj.postwage<pj+1.postwage) replace=empj;empj=empj+1;empj+1=replace; for(j=0;j<nn;j+)pj.totalwage=pj.postwage+pj.basesalary-pj.yiliaobaoxian-pj.gongjijin;printf("-n");printf("|职工号 |姓名 |性

30、别 |年龄 |基本工资 |岗位工资 |医疗保险 |公积金 |总工资 |n"); printf("|%8s|%7s|%5d|%5d| %7.2f| %7.2f| %7.2f| %7.2f|%7.2f|n",pj.employeeid,,pj.sex,pj.age,pj.basesalary,pj.postwage,pj.yiliaobaoxian,pj.gongjijin,pj.totalwage);printf("-n");/*功能:按医疗保险排列(冒泡法)*/void array_yiliaobaoxian()int i,j;p

31、=emp; for(i=0;i<nn;i+)for(j=0;j<nn-i;j+) if(pj.yiliaobaoxian<pj+1.yiliaobaoxian) replace=empj;empj=empj+1;empj+1=replace; for(j=0;j<nn;j+)pj.totalwage=pj.postwage+pj.basesalary-pj.yiliaobaoxian-pj.gongjijin;printf("-n");printf("|职工号 |姓名 |性别 |年龄 |基本工资 |岗位工资 |医疗保险 |公积金 |总工资

32、|n"); printf("|%8s|%7s|%5d|%5d| %7.2f| %7.2f| %7.2f| %7.2f|%7.2f|n",pj.employeeid,,pj.sex,pj.age,pj.basesalary,pj.postwage,pj.yiliaobaoxian,pj.gongjijin,pj.totalwage);printf("-n");/*功能:按公积金排列(选择法)*/void array_gongjijin()int i,j,k; p=emp;for(i=0;i<nn-1;i+) k=i;for(j

33、=i+1;j<nn;j+)if(pk.gongjijin<pj.gongjijin)k=j;if(k!=i) replace=empk;empk=empi;empi=replace; for(j=0;j<nn;j+)pj.totalwage=pj.postwage+pj.basesalary-pj.yiliaobaoxian-pj.gongjijin;printf("-n");printf("|职工号 |姓名 |性别 |年龄 |基本工资 |岗位工资 |医疗保险 |公积金 |总工资 |n"); printf("|%8s|%7s|%5d|%5d| %7.2f| %7.2f| %7.2f| %7.2

温馨提示

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

评论

0/150

提交评论