职工工资管理系统C语言.pdf
《职工工资管理系统C语言.pdf》由会员分享,可在线阅读,更多相关《职工工资管理系统C语言.pdf(23页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、.1、设计容设计一个工资管理程序存储的数据包括:XX,职工号,所属部门,基本工资,奖励工资,补贴项目及金额和扣款项目及金额。功能:1)加入一个人的记录2)删除一个人的记录3)显示所有人的记录4)查询(包括按人名查询工资和按工号查询)5)统计功能(包括统计某一工资围的人数和统计各部门的工资总数)6)修改功能2、设计目的1.熟悉 C 语言程序的编辑、编译和运行的过程。2.熟练运用 if 语句和 switch 语句以及嵌套应用。3.学习并掌握 C 语言定义函数的基本方法、声明函数及调用函数的方法和过程。4.掌握文件的概念以及文件的定义方法,认识文件打开、关闭、读、写等文件基本操作函数。5.掌握结构体
2、类型变量、数组的定义和使用。6.掌握数组的定义、引用以及输入输出的方法、通过字符数组存储字符串,进一步使用字符串。3、设计思路(包括所用的函数)职工工资管理系统专业资料-.添查查加看找职职职工工工信信信息息息void show();void add();/添加职工信息void see();/查看职工信息void search();/查找职工信息void ghcz();/按工号查找void xmcz();/按 XX 查找void bmcz();/按部门查找void del();/删除职工信息void xmsc();/按 XX 删除void ghsc();/按工号删除-删个统修保退除人计改存出职工
3、职职数工资工工据信统信信息计息息图 1 程序功能图void statistics();/个人工资统计void statistic();/统计职工信息void gzdtj();/按工资段统计void bmtj();/按部门统计void modify();/修改职工信息void ghxg();/按工号修改void xmxg();/按 XX 修改void reserve();/保存职工信息.可修编.-.开始主菜单选择操作选择 1添加职工信息选择 2查看职工信息按 XX选择 3查找职工信息按工号按 XX选择 4删除职工信息按工号选择 5个人工资统计按工资段选择 6统计职工工资按部门选择 7修改职工信息
4、选择 8保存数据选择 01、添加职工信息:退出结束-.可修编.-.开始定义数据类型 numberTemp,iinumberTemp输出职工信息i+添加成功结束添加函数流程图2、查看职工信息:开始定义 i=0iNumber输出职工信息结束查看函数流程图-.可修编.-.3、查找职工信息:开始定义 n=0输入 n如果 n=1按 XX 查找终止如果 n=2按工号查找终止输入错误终止结束查找函数流程图-.可修编.-.4、删除职工信息:开始定义 n=0输入 n如果 n=1按 XX 删除如果 n=2终止按工号删除终止结束删除函数流程图-.可修编.-.5、个人工资统计开始定义 i=0For 函数初始值 i=0
5、iNumber循环体输出员工总工资i+结束个人工资统计流程图-.可修编.-.6、统计职工工资开始定义 n=0输入 n如果 n=1按工资段统计终止如果 n=2按部门统计终止输入错误终止结束工资统计流程图-.可修编.-.7、修改职工工资开始定义 mode=0输入 mode如果 mode=1按 XX 修改终止如果 mode=2按工号修改终止输入错误终止结束修改函数流程图-.可修编.-.4、程序代码#include#include#include struct workerchar depa30;char name30;char ID10;int salary1,salary2,salary3,sal
6、ary4;int dq(struct worker wo);void show();void bc(struct worker wo);void add();void see();void search();void ghcz();void xmcz();void bmcz();void del();void xmsc();void ghsc();void statistics();void statistic();void gzdtj();void bmtj();void modify();void ghxg();void xmxg();void reserve();void back();
7、struct worker wo100;/保存所有的职工信息int Number=0;/记录总的职工人数void main()int choose=0;while(1)show();printf(tt=请选择:);scanf(%d,&choose);-.可修编.-.system(cls);switch(choose)case 0:exit(0);/退出break;case 1:add();back();/添加职工信息break;case 2:see();back();/查看职工信息break;case 3:search();back();/查找职工信息break;case 4:del();ba
8、ck();/删除职工信息break;case 5:statistics();back();/个人工资统计break;case 6:statistic();back();/统计职工工资break;case 7:modify();back();/修改职工信息break;case 8:reserve();back();/保存数据break;default:break;fflush(stdin);system(cls);int dq(struct worker wo)FILE*fp=NULL;int i=0;fp=fopen(C:/worker.dat,rb);while(fread(&woi,siz
9、eof(struct worker),1,fp)i+;fclose(fp);-.可修编.-.return i;void show()printf(n);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);printf(t0 退 出 系 统nn);printf(t*n);void bc(st
10、ruct 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(%d,&numberTemp);-.可修编.-.for(i=0;inumberTemp;i+)printf(输入第%d 个职工信息n,i+1);printf(XX:);scanf(%s,temp.name);prin
11、tf(工号:);scanf(%s,temp.ID);printf(所属部门:);scanf(%s,temp.depa);printf(基本工资:);scanf(%d,&temp.salary1);printf(奖励工资:);scanf(%d,&temp.salary2);printf(补贴项目即金额:);scanf(%d,&temp.salary3);printf(扣除项目即金额:);scanf(%d,&temp.salary4);woNumber+=temp;/写入到数组bc(&temp);/写入到文件printf(添加成功n);/查看职工信息void see()int i=0;printf
12、(以下是全部职工n);printf(tXXt工号t 所属部门t 基本工资t 奖励工资t 补贴项目及金额t 扣款项目及金额t 总工资n);while(iNumber)printf(t%st%st%st%dtt%dtt%dtt%dtt%dn,woi.name,woi.ID,woi.depa,woi.salary1,woi.salary2,woi.salary3,woi.salary4,woi.salary1+woi.salary2+woi.salary3-woi.salary4);i+;/查找职工信息void search()int n=0;printf(1 按 XX 查找n);printf(2
13、按工号查找n);printf(3 按部门查找n);scanf(%d,&n);-.可修编.-.switch(n)case 1:xmcz();break;case 2:ghcz();break;case 3:bmcz();break;default:printf(输入错误!n);break;void xmcz()/按 XX 查找char name30;int i=0;printf(请输入要查找职工 XX:);scanf(%s,name);system(cls);printf(tXXt工号t 所属部门t 基本工资t 奖励工资t 补贴项目及金额t 扣款项目及金额t 总工资n);for(i=0;iNum
14、ber;i+)if(strcmp(name,woi.name)=0)printf(t%st%st%st%dtt%dtt%dtt%dtt%dn,woi.name,woi.ID,woi.depa,woi.salary1,woi.salary2,woi.salary3,woi.salary4,woi.salary1+woi.salary2+woi.salary3-woi.salary4);void ghcz()/按工号查找char id10;int i=0;printf(请输入要查找工号:);scanf(%s,id);system(cls);printf(tXXt工号t 所属部门t 基本工资t 奖励
15、工资t 补贴项目及金额t 扣款项目及金额t 总工资n);for(i=0;iNumber;i+)if(strcmp(id,woi.ID)=0)printf(t%st%st%st%dtt%dtt%dtt%dtt%dn,woi.name,woi.ID,woi.depa,woi.salary1,w-.可修编.-.oi.salary2,woi.salary3,woi.salary4,woi.salary1+woi.salary2+woi.salary3-woi.salary4);void bmcz()/按部门查找char depa30;int i=0;printf(请输入要查询的部门名称:);scanf
16、(%s,depa);system(cls);printf(tXXt 工号t 所属部门t 基本工资t 奖励工资t 补贴项目及金额t 扣款项目及金额t 总工资n);for(i=0;iNumber;i+)if(strcmp(depa,woi.depa)=0)printf(t%st%st%st%dtt%dtt%dtt%dtt%dn,woi.name,woi.ID,woi.depa,woi.salary1,woi.salary2,woi.salary3,woi.salary4,woi.salary1+woi.salary2+woi.salary3-woi.salary4);/删除职工信息void del
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 职工工资 管理 系统 语言
限制150内