工资管理系统C语言课设.doc_第1页
工资管理系统C语言课设.doc_第2页
工资管理系统C语言课设.doc_第3页
工资管理系统C语言课设.doc_第4页
工资管理系统C语言课设.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

工资管理系统源码:开放 带登录的#include#include#include#include /*清屏函数头*/ #define N 100 /* /职工最大人数控制*/*结构体定义职工的所有属性,包括职工证号,姓名,底薪,奖金和提成,最后收入。*/struct studentint no;char name15;long score1;long score2;long score3;long score4;long score5;long score6;long score7;long score8;long sum1;float sum2;float sum;sN;/*/ 函数声明*/void mune(); /* /主菜单函数*/void input(); /* /录入函数*/void insert(); /* /插入函数*/void del(); /* /删除函数*/void delNo(); /* /按职工证号删除*/void delName(); /* /按姓名删除 */ void select(); /* /查找函数*/void selectNo(); /* /按职工证号查找*/void selectName();/* /按姓名查找*/void display(); /* /制表格式函数*/void total(); /* /分类合计函数*/void save(); /* /保存函数*/void load(); /* /读取函数*/* / 收税函数*/float tax(int x) if(x=2000) return 0; else if(x4000) return (x-2000)*0.05; if(x6000) return 100+(x-4000)*0.1; if(x8000) return 300+(x-6000)*0.15; if(x10000) return 600+(x-8000)*0.2; if(x15000); return 1000+(x-10000)*0.25; if(x职工工资管理程序-|n); printf( *n); printf( 请在08之间选择 :); /*/ 主函数*/int main () int in; /*选择功能的变量*/ char ch=y; /*/选择是否继续时的变量,(y / n)*/ while(1) mune(); /*120行 */ scanf(%d,&in); if(in9) printf(a输入有误,请在08之间选择!); continue; else if(in=0) printf(确定要退出程序吗?(y / n) ); scanf( %c,&ch); printf(n); if(ch=Y | ch=y) printf( 谢谢您的使用,再见!); getch(); break; switch(in) case 1: /*/录入*/ printf(n- 请输入职工信息 -); input(); break; case 2: /* /插入*/ insert(); break; case 3: /*删除*/ if(count!=0) system(cls); del(); /*/ else system(cls); printf(a没有数据!n); /* /(如果学生人数为0,弹出此消息) */ break; case 4: /*查找*/ if(count!=0) system(cls); select(); else system(cls); printf(a没有数据!n); break; case 5: /*/制表*/ if(count!=0) system(cls); display(); else system(cls); printf(a没有数据!n); break; case 6: /* /合计 */ if(count!=0) total(); else system(cls); printf(a没有数据!n); break; case 7: /*保存*/ save(); /* /第439行 */ break; case 8: /* /读取*/ load(); break; default : break; /*主菜单函数*/*/ 录入函数*/void input() system(cls);char ch;for(i=count;iN;i+) printf(n职工证号: ); scanf(%d,&si.no); printf(n姓名: ); scanf(%s,); printf(n基本工资: ); scanf(%ld,&si.score1); printf(n岗位工资: ); scanf(%ld,&si.score2); printf(n技校工资: ); scanf(%ld,&si.score3); printf(n生活补助: ); scanf(%ld,&si.score4); printf(n房屋补贴: ); scanf(%ld,&si.score5); printf(n其他: ); scanf(%ld,&si.score7); printf(n扣款(公基金,采暖费):); scanf(%ld,&si.score8); si.sum1=si.score1+si.score2+si.score3+si.score4+si.score5+si.score6+si.score7-si.score8; si.sum2=tax(si.sum1); si.sum=(si.sum1-si.sum2); printf(nn); count+; printf(是否继续输入?(y / n) ); scanf( %c,&ch); printf(n); if(ch!=Y & ch!=y) system(cls); /* /清屏 */ printf(nntttt接下来您要做什么?n); break; /*插入函数*/void insert() system(cls); printf(nnn- 请输入要插入的职工信息 -);struct student temp;input();system(cls); /*/ 删除函数,含子菜单:按职工号删除,按姓名删除*/void del()int in; while(1) printf( *n); printf( | 1.按职工证号删除 |n); printf( | |n); printf( | 2.职工按姓名删除 |n); printf( | |n); printf( | 3.返回上一级菜单 |n); printf( *n); printf( 请在13之间选择: ); scanf(%d,&in); if(in3) printf(a输入有误,请重新输入!n); continue; else break;switch(in) case 1: delNo(); break; case 2: delName(); break; case 3: break;/* 删除函数,按职工证号删除*/void delNo() printf(n- 请输入要删除的职工的职工证号 -); int dno; char ch; printf(n输入: ); scanf(%d,&dno); for(i=0;icount;i+) if(dno=si.no) printf(职工号:%ldn,si.no); printf(姓名:%sn,); printf(基本工资:%ldn,si.score1); printf(岗位工资:%ldn,si.score2); printf(技校工资:%ldn,si.score3); printf(生活补助:%ldn,si.score4); printf(房屋补贴:%ldn,si.score5); printf(其他:%ldn,si.score7); printf(扣款:%ldn,si.score8); printf(应发工资:%ldn,si.sum1); printf(所得税:%.2fn,si.sum2); printf(实际工资:%.2fn,si.sum); printf(n确定要删除吗?(Y / N); scanf( %c,&ch); printf(n); if(ch=y | ch=Y) for(j=i;jcount-1;j+) sj=sj+1; system(cls); printf(nnnnnttt删除成功n); printf(nnn按任意键继续操作:); getchar();getchar(); system(cls); count-; break; /*/ 删除函数,按职工姓名删除*/void delName() printf(n- 请输入要删除的职工的姓名 -); char name15; char ch; int t; printf(n输入: ); scanf(%s,name); for(i=0;icount;i+) if(strcmp(name,)=0) t=i; printf(职工号:%ldn,st.no); printf(姓名:%sn,); printf(基本工资:%ldn,st.score1); printf(岗位工资:%ldn,st.score2); printf(技校工资:%ldn,st.score3); printf(生活补助:%ldn,st.score4); printf(房屋补贴:%ldn,st.score5); printf(其他:%ldn,st.score7); printf(扣款:%ldn,st.score8); printf(应发工资:%ldn,st.sum1); printf(所得税:%.2fn,st.sum2); printf(实际工资:%.2fn,st.sum); printf(n确定要删除吗?(Y / N); scanf( %c,&ch); printf(n); if(ch=y | ch=Y) for(j=i;jcount-1;j+) sj=sj+1; system(cls); printf(nnnnnttt删除成功n); printf(nnn按任意键继续操作:); getchar();getchar(); count-; break; /*查找函数,含子程序:按职工证号查找,按姓名查找*/void select()int in; do printf(nnn); printf( *n); printf( | 1.按职工证号查找 |n); printf( | |n); printf( | 2.按职工姓名查找 |n); printf( | |n); printf( | 3.返回上一级菜单 |n); printf( *n); printf( 请在13之间选择: ); scanf(%d,&in); if(in3) printf(a输入有误,请重新输入!n); continue; else break; while(1);switch(in) case 1: selectNo(); break; case 2: selectName(); break; case 3: break;/*/ 查找函数,按职工证号查找学员信息*/void selectNo() system(cls); printf(n- 请输入要查找的职工的职工证号 -);int no;printf(n输入:);scanf(%d,&no);for(i=0;icount;i+) if(si.no=no) printf(职工号:%dn,si.no); printf(姓名:%sn,); printf(基本工资:%ldn,si.score1); printf(岗位工资:%ldn,si.score2); printf(技校工资:%ldn,si.score3); printf(生活补助:%ldn,si.score4); printf(房屋补贴:%ldn,si.score5); printf(其他:%ldn,si.score7); printf(扣款:%ldn,si.score8); printf(应发工资:%ldn,si.sum1); printf(所得税:%.2fn,si.sum2); printf(实际工资:%.2fn,si.sum); printf(n); printf(t按任意键继续操作: );getchar();getchar();system(cls); /* 查找函数,按职工证号查找职工信息*/void selectName()system(cls);printf(n- 请输入要查找的职工的姓名 -);char name15;int m; printf(n输入:);scanf(%s,name);for(i=0;icount;i+) if(strcmp(name,)=0) m=i; printf(职工号:%dn,sm.no); printf(姓名:%sn,); printf(基本工资:%ldn,sm.score1); printf(岗位工资:%ldn,sm.score2); printf(技校工资:%ldn,sm.score3); printf(生活补助:%ldn,sm.score4); printf(房屋补贴:%ldn,sm.score5); printf(其他:%ldn,sm.score7); printf(扣款:%ldn,sm.score8); printf(应发工资:%ldn,sm.sum1); printf(所得税:%.2fn,sm.sum2); printf(实际工资:%.2fn,sm.sum); printf(n); printf(t按任意键继续操作: );getchar();getchar();system(cls); /*/ 制表函数,将所有职工工资以表格形式输出*/void display()printf(-);printf( 工 资 表 单 浏 览n);printf(-);printf(职工号: );for(i=0;icount;i+)printf(%-10d,si.no); printf(n);printf(-);printf(姓名: );for(i=0;icount;i+)printf(%-10s,); printf(n);printf(-);printf(基本工资: );for(i=0;icount;i+)printf(%-10ld,si.score1); printf(n);printf(-);printf(岗位工资: );for(i=0;icount;i+)printf(%-10ld,si.score2); printf(n);printf(-);printf(技校工资: );for(i=0;icount;i+)printf(%-10ld,si.score3); printf(n);printf(-);printf(生活补助: );for(i=0;icount;i+)printf(%-10ld,si.score4); printf(n);printf(-);printf(房屋补贴: );for(i=0;icount;i+)printf(%-10ld,si.score5); printf(n);printf(-);printf(其他: );for(i=0;icount;i+)printf(%-10ld,si.score7); printf(n);printf(-);printf(扣款: );for(i=0;icount;i+)printf(%-10ld,si.score8); printf(n);printf(-);printf(应发工资: );for(i=0;icount;i+)printf(%-10ld,si.sum1); printf(n);printf(-);printf(所得税: );for(i=0;icount;i+)printf(%-10.2f,si.sum2); printf(n);printf(-);printf(实际工资: );for(i=0;icount;i+)printf(%-10.2f,si.sum); printf(n);printf(-);printf(-);printf(tt按任意键继续操作: );getchar();getchar();system(cls); /* 合计函数,将底薪,奖金和提成,最后工资按最后输出。*/void total()system(cls);long tot1=0,tot2=0,tot3=0,tot4=0,tot5=0,tot6=0,tot7=0,tot8=0;double tot9=0,tot10=0;for(i=0;icount;i+) tot1+=si.score1; tot2+=si.score2; tot3+=si.score3; tot4+=si.score4; tot5+=si.score5; tot6+=si.score7; tot7+=si.score8; tot8+=si.sum1; tot9+=si.sum2; tot10+=si.sum;printf(n);printf(t基本工资t岗位工资t技校工资t生活补助t房屋补贴n);printf(合计:t%ldtt%ldtt%ldtt%ldtt%ldn,tot1,tot2,tot3,t

温馨提示

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

评论

0/150

提交评论