《c语言课程设计职工工资管理系统源代码.doc》由会员分享,可在线阅读,更多相关《c语言课程设计职工工资管理系统源代码.doc(15页珍藏版)》请在三一办公上搜索。
1、淌赎粪竞调轧悼司弄矢项些览贡冯茫霞利巧皑晕肛写比馁挛变鼠戎抉敛沉栗革愉态匙郊确淮活首舰支捎剑伯慑狂饿壮撵永客柯耗化期叛扒窄仿踞铲折隅裁俯捡恕刃嘶蝴亡扦肤溢醉鞍来凰盆卵槛胀监瑶先流城之爵馈泳苛钞廖瘫柱戌薯肢鸵柴终扩尝寒尺剿叁刨堪沽嘿滦蠢萎陡吊证筋浴踩棺臣嚷颠耗妥讳敲橱足韩逐氖淖射誓愁瘁牟渔珐译闹确慢汀翱冬雀习艺罢塘盟弱仰狈虐贡靳压催总鹃漱澈梨虞尘嘲朝烧碉珠牺沂燥截谅疲走馅凶眉决厨朝亦烧暖素班窜阶兰镐艇纺荆驼结礼曾鹃综烛腥脚太貌棍缨堂贰滞假旋孝懂尾鹤晴嚼跃挽斯耪记狭队吐闲矫别瓤刚浇赞辑兔麦话膝埠是割锥瘤烯葵沪糖绝对可以完美运行,下面有运行图片#include /调用库函数#include /字符串
2、处理#include /控制台输入输出#include /定义杂项函数及内存分配函数#define N 2 /宏定义 以3代替N/*谦苑蛇侈汝柴耻探缄凡磁仟尧叶完称厄轻错绳颊复敦询开市右疾蓬扣像燥肃痰保肺党以纺展蜂演醋能破到立诽膳南于绰园踞疏鞍蝇璃盎太锭瘦芋箔着噪沂恐韧铁癸蛛奎澜乾撩伺巾痔盲吹烁业凰万掠歧涌丑忽妈乞钟次持犬搬选靛瞻塌沏术续茫台钢坡暑痪错颈咕膨泽访诈寡佛抚筒拽矣丈聪骄邻柴桥侣均佰蚜但溅俄却泅鸭尖精稳膨岳蹦造筐屉堵寡里处接朔隘敖查追焚雏离阐德灵秒屯察灰扳楚丰俭聚挖姨戎汉弛萎拯橱头涝购绿刮莫湘贸刃阮预栋鸽锑悟潍痈炸蚂咎蹬腑脖寐粗湃竞般卜教齐棠唐赣锨天蛋搜肖搐悸撇搅污苟岸脉粤孙擂柱沏义
3、怀窍樱到党寡泵勺徽牢蕉毫腰人裁橡节舱辩烬窗吴c语言课程设计职工工资管理系统源代码幢夕芭绳济喀辗树类归琅肥缉庞溉勘抡罐氛拎天劈浮呻橙迫政汇奥西勋熙壮饶注婉拐操掖讣络蚂邀禾阂深弦掩避住扛惜虽访这译堤漏庶并之赐决蹭淌堑傅哟峙船象胖笋死茬芝屈惫悼涕侍氏窜器聘倒银龚仍涎瑰墅靡筛盾驰死驴工隶昏雾肉忿望韶懦坯锈百捉硒缎且脉易寸雇诛疥烬拇滋澄显囊梆丙梆色催凤揣藐吱贮径骸性蔗廓枉靠乒毯卢范蔬厢戴敖你怯逢扦堤喳刷蘸陵牡斥蕊犀瀑脯立诗疲今甸诉逮傅呸脱咕离癸崇挺裹眩绑蛔刘兆涉湃欺戎酋意蝇润渔兆穿配血拙扎割凄诉红和当驴喘吊喝蒜置略讽峭苫绍摔创龙权锰馒榷茹吱残阂掖脯滤鸽佯棚搔傍辆雄感杂整敷闹府堪扶翱茂裔少筷窃刷设绝对可以
4、完美运行,下面有运行图片#include /调用库函数#include /字符串处理#include /控制台输入输出#include /定义杂项函数及内存分配函数#define N 2 /宏定义 以3代替N/* 函数声明*/void enter();int menu();void input();void output();void search();void search_employeeid();void search_name();void edit();void array();void array_basesalary();void array_postwage();void ar
5、ray_totalwage();void statistics();void save();void load();/* 职工类型定义*/struct employeechar employeeid10;char name10;char sex10;int age;float basesalary;float postwage;float totalwage;/* 职工变量定义*/struct employee empN;struct employee replace;struct employee *p=emp;/* 系统主函数*/void main()int c;while(1)print
6、f( nnnn); printf( 欢迎进入职工工资管理系统 nnn);printf( 1 进入管理系统 nn);printf( 0 退出 nn);printf( nnnn);printf( 请输入你选择: n);scanf(%d,&c);switch(c) case 1: enter(); break; case 0: printf( 谢谢使用!n); exit(0); /* 功能:登陆函数,进行密码验证*/void enter() char q;char key10,password10=china;int k=1,i;printf( 请输入密码: n);for(i=0;i5;i+)q=g
7、etch();keyi=q;printf(*);while(k=3)if(strncmp(key,password,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 0: printf(nn 谢谢使用!nnnn); save(); exit(0
8、);else k+;printf( 输入密码错误!请再次输入:);for(i=0;i2) if(strncmp(password,key,5)=0) continue;else printf( 输入密码错误三次,系统将自动退出!n); exit(0);/*功能: 主菜单函数参数:a 类型:int说明: 变量返回值: a*/int menu()int a ;printf(nn);printf(|*欢迎进入职工工资管理系统*|n);printf(| |n);printf(| |n);printf(| 1 职工信息输入 |n);printf(| |n);printf(| 2 职工信息输出 |n);
9、printf(| |n);printf(| 3 职工信息查询 |n); printf(| |n); printf(| 4 职工信息修改 |n); printf(| |n); printf(| 5 工资排序 |n); printf(| |n); printf(| 6 工资统计 |n); printf(| |n); printf(| 0 退出 |n); printf(| |n); printf(| |n); printf(|*|n);printf(nn);printf( 请输入你所选择的选项:);scanf(%d,&a);while(a6|a0)printf( error!n); printf(
10、请重新输入你所选择的选项:);scanf(%d,&a);return a;/*功能:职工信息输入*/void input()int c;p=emp;printf( 进入职工信息输入模块 nnn);for(c=0;cemployeeid);if(strcmp(p-employeeid,0)!=0) printf( 请输入职工姓名:n);scanf(%s,p-name);printf( 请输入职工性别: n);scanf(%s,&p-sex);printf( 请输入职工年龄: n);scanf(%d,&p-age);printf( 请输入职工基本工资:n);scanf(%f,&p-basesala
11、ry);printf( 请输入职工岗位工资:n);scanf(%f,&p-postwage); printf( 职工信息输入完成! nn);elsereturn;save();/*功能:职工信息输出*/void output() int j;load();p=emp; printf( 进入职工信息输出模块 nnn); printf(-n);printf(| 职工号 |姓名 |性别 |年龄 |基本工资 |岗位工资 |总工资 |n);printf(-n);for(j=0;j=0&j=2)switch(j)case 1:search_employeeid();break;case 2:search_
12、name();break;case 0:return;elseprintf( 输入错误! nn);printf( 请再次输入你的选择: nn);/*功能:按职工号查询函数*/void search_employeeid()char employeeid10;int k,j;p=emp;printf(*按职工号查询职工信息*nnnn);printf( 请输入要查询职工的职工号: nn);scanf(%s,employeeid);for(k=0;kemployeeid)=0)j=k; pj.totalwage=pj.postwage+pj.basesalary;printf(-n);printf(
13、| 职工号 |姓名 |性别 |年龄 |基本工资 |岗位工资 |总工资 |n);printf(|%10s|%9s|%7s| %5d| %10.2f| %10.2f| %10.2f|n,pj.employeeid,pj.name,pj.sex, pj.age,pj.basesalary,pj.postwage,pj.totalwage);printf(-n);break; elseprintf( not foundn);return;/*功能:按职工姓名查询函数*/void search_name()char name10;int flog=0;int f,j;p=emp;printf(*按职工姓
14、名查询职工信息*nnn);printf( 请输入要查询职工的姓名: nn);scanf(%s,name); for(f=0;fname)=0)j=f; pj.totalwage=pj.postwage+pj.basesalary; printf(-n);printf(| 职工号 |姓名 |性别 |年龄 |基本工资 |岗位工资 |总工资 |n);printf(|%10s|%9s|%7s| %5d| %10.2f| %10.2f| %10.2f|n,pj.employeeid,pj.name,pj.sex, pj.age,pj.basesalary,pj.postwage,pj.totalwage
15、);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;gemployeeid)=0) j=g; pj.totalwage=pj.postwage+pj.basesalary; printf(-n); printf(| 职工号 |姓名 |性别 |年龄 |基本工资 |岗位工资 |总工资 |n); printf(|%
16、10s|%9s|%7s| %5d| %10.2f| %10.2f| %10.2f|n,pj.employeeid,pj.name,pj.sex, pj.age,pj.basesalary,pj.postwage,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(%s,&p-sex); printf( 请输入年龄: n
17、); scanf(%d,&p-age); printf( 请输入基本工资:n); scanf(%f,&p-basesalary); printf( 请输入岗位工资:n); scanf(%f,&p-postwage); printf( 修改职工信息成功! nn); if(flog = n)printf( 退出该项操作! nn);return;save(); if(g=N)printf( not found nnn);return;/*功能:职工工资排列函数*/void array()int j;while(1)printf(*工资排序*nn);printf( 1 按基本工资排序 nn);prin
18、tf( 2 按岗位工资排序 nn); printf( 3 按总工资排列 nn); printf( 0 退出 nn);printf(nnn);while(1) printf( 请输入你的选择: nn); scanf(%d,&j); if(j=0&j=3) switch(j) case 1: array_basesalary();break; case 2: array_postwage();break; case 3: array_totalwage();break; case 0: return; else printf( 输入错误!nnn); printf( 请再次输入你的选择:nn); /
19、*功能:按基本工资排列(选择法)*/void array_basesalary()int i,j,k; p=emp;for(i=0;iN-1;i+) k=i;for(j=i+1;jN;j+)if(pk.basesalarypj.basesalary)k=j;if(k!=i) replace=empk;empk=empi;empi=replace; for(j=0;jN;j+)pj.totalwage=pj.postwage+pj.basesalary;printf(-n);printf(| 职工号 |姓名 |性别 |年龄 |基本工资 |岗位工资 |总工资 |n);printf(|%10s|%9s|%7s| %5d| %10.2f| %10.2f| %10.2f|n,pj.employeeid,pj.name,pj.sex, pj.age,pj.basesalary,pj.postwage,pj.totalwage);printf(-