工资管理系统C语言课设.doc

上传人:scccc 文档编号:12450034 上传时间:2021-12-04 格式:DOC 页数:14 大小:53KB
返回 下载 相关 举报
工资管理系统C语言课设.doc_第1页
第1页 / 共14页
工资管理系统C语言课设.doc_第2页
第2页 / 共14页
工资管理系统C语言课设.doc_第3页
第3页 / 共14页
工资管理系统C语言课设.doc_第4页
第4页 / 共14页
工资管理系统C语言课设.doc_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《工资管理系统C语言课设.doc》由会员分享,可在线阅读,更多相关《工资管理系统C语言课设.doc(14页珍藏版)》请在三一文库上搜索。

1、工资管理系统源码:开放 带登录的#include<stdio.h>#include<stdlib.h>#include<string.h>#include<conio.h> /*清屏函数头*/ #define N 100 /* /职工最大人数控制*/*结构体定义职工的所有属性,包括职工证号,姓名,底薪,奖金和提成,最后收入。*/struct studentint no;char name15;long score1;long score2;long score3;long score4;long score5;long score6;long s

2、core7;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();/* /按姓名查找*/voi

3、d display(); /* /制表格式函数*/void total(); /* /分类合计函数*/void save(); /* /保存函数*/void load(); /* /读取函数*/* / 收税函数*/float tax(int x) if(x<=2000) return 0; else if(x<4000) return (x-2000)*0.05; if(x<6000) return 100+(x-4000)*0.1; if(x<8000) return 300+(x-6000)*0.15; if(x<10000) return 600+(x-80

4、00)*0.2; if(x<15000); return 1000+(x-10000)*0.25; if(x<20000) return 2250+(x-15000)*0.3; /* 全局变量*/int i,j,k,t,q;char a20,b20,c; /* /循环变量*/int count=0; /*控制数组下标变量*/ void mune()system("cls"); printf("nn"); if(k=0)printf("请先登录!n"); while(k!=3&&t=0) if(k!=0) p

5、rintf("nn"); printf("请输入您的账号:"); scanf("%s",a); printf("请输入您的密码:"); while(c=getch()!='r') printf("*"); bq+=c; k+; /system("cls"); if(strcmp(a,"jieshao")!=0|strcmp(b,"123")!=0) printf(" %c%c用户或密码错误!请重新输入!n&qu

6、ot;,7,7); q=0; else t=1; if(k=3) printf("nn 你 是 非 法 用 户!");printf("%c%c%c%c%c%c",7,7,7,7,7,7);exit(0); printf("nnn"); printf(" *n"); printf(" | 职工工资系统主菜单界面 |n"); printf(" | |n"); printf(" | 1.录入职工工资 5.浏览职工工资 |n"); printf(" |

7、|n"); printf(" | 2.插入职工工资 6.合计职工工资 |n"); printf(" | |n"); printf(" | 3.删除职工工资 7.存储职工工资 |n"); printf(" | |n"); printf(" | 4.查找职工工资 8.读取职工工资 |n"); printf(" | |n"); printf(" | 0.安全退出系统 |n"); printf(" | |n"); printf(&qu

8、ot; |->职工工资管理程序<-|n"); printf(" *n"); printf(" 请在08之间选择 :"); /*/ 主函数*/int main () int in; /*选择功能的变量*/ char ch='y' /*/选择是否继续时的变量,(y / n)*/ while(1) mune(); /*120行 */ scanf("%d",&in); if(in<0 | in>9) printf("a输入有误,请在08之间选择!"); contin

9、ue; 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();

10、 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: /

11、*/制表*/ 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(); brea

12、k; default : break; /*主菜单函数*/*/ 录入函数*/void input() system("cls");char ch;for(i=count;i<N;i+) printf("n职工证号: "); scanf("%d",&si.no); printf("n姓名: "); scanf("%s",si.name); printf("n基本工资: "); scanf("%ld",&si.score1); print

13、f("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(

14、"%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 /

15、 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

16、;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"

17、;); printf(" 请在13之间选择: "); scanf("%d",&in); if(in<1 | in>3) 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;

18、 char ch; printf("n输入: "); scanf("%d",&dno); for(i=0;i<count;i+) if(dno=si.no) printf("职工号:%ldn",si.no); printf("姓名:%sn",si.name); printf("基本工资:%ldn",si.score1); printf("岗位工资:%ldn",si.score2); printf("技校工资:%ldn",si.score3);

19、 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确定要删除吗?(

20、Y / N)"); scanf(" %c",&ch); printf("n"); if(ch='y' | ch='Y') for(j=i;j<count-1;j+) sj=sj+1; system("cls"); printf("nnnnnttt删除成功n"); printf("nnn按任意键继续操作:"); getchar();getchar(); system("cls"); count-; break; /*/ 删

21、除函数,按职工姓名删除*/void delName() printf("n- 请输入要删除的职工的姓名 -"); char name15; char ch; int t; printf("n输入: "); scanf("%s",name); for(i=0;i<count;i+) if(strcmp(name,si.name)=0) t=i; printf("职工号:%ldn",st.no); printf("姓名:%sn",st.name); printf("基本工资:%ldn

22、",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);

23、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;j<count-1;j+) sj=sj+1; system("cls"); printf("nnnnnttt删除成功n");

24、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"); p

25、rintf(" | 3.返回上一级菜单 |n"); printf(" *n"); printf(" 请在13之间选择: "); scanf("%d",&in); if(in<1 | in>3) printf("a输入有误,请重新输入!n"); continue; else break; while(1);switch(in) case 1: selectNo(); break; case 2: selectName(); break; case 3: break;/*/ 查找

26、函数,按职工证号查找学员信息*/void selectNo() system("cls"); printf("n- 请输入要查找的职工的职工证号 -");int no;printf("n输入:");scanf("%d",&no);for(i=0;i<count;i+) if(si.no=no) printf("职工号:%dn",si.no); printf("姓名:%sn",si.name); printf("基本工资:%ldn",si.sc

27、ore1); 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("

28、;所得税:%.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输

29、入:");scanf("%s",name);for(i=0;i<count;i+) if(strcmp(name,si.name)=0) m=i; printf("职工号:%dn",sm.no); printf("姓名:%sn",sm.name); printf("基本工资:%ldn",sm.score1); printf("岗位工资:%ldn",sm.score2); printf("技校工资:%ldn",sm.score3); printf("生

30、活补助:%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

31、按任意键继续操作: ");getchar();getchar();system("cls"); /*/ 制表函数,将所有职工工资以表格形式输出*/void display()printf("-");printf(" 工 资 表 单 浏 览n");printf("-");printf("职工号: ");for(i=0;i<count;i+)printf("%-10d",si.no); printf("n");printf("-&qu

32、ot;);printf("姓名: ");for(i=0;i<count;i+)printf("%-10s",si.name); printf("n");printf("-");printf("基本工资: ");for(i=0;i<count;i+)printf("%-10ld",si.score1); printf("n");printf("-");printf("岗位工资: ");for(i=0;i&l

33、t;count;i+)printf("%-10ld",si.score2); printf("n");printf("-");printf("技校工资: ");for(i=0;i<count;i+)printf("%-10ld",si.score3); printf("n");printf("-");printf("生活补助: ");for(i=0;i<count;i+)printf("%-10ld",s

34、i.score4); printf("n");printf("-");printf("房屋补贴: ");for(i=0;i<count;i+)printf("%-10ld",si.score5); printf("n");printf("-");printf("其他: ");for(i=0;i<count;i+)printf("%-10ld",si.score7); printf("n");printf(

35、"-");printf("扣款: ");for(i=0;i<count;i+)printf("%-10ld",si.score8); printf("n");printf("-");printf("应发工资: ");for(i=0;i<count;i+)printf("%-10ld",si.sum1); printf("n");printf("-");printf("所得税: ");f

36、or(i=0;i<count;i+)printf("%-10.2f",si.sum2); printf("n");printf("-");printf("实际工资: ");for(i=0;i<count;i+)printf("%-10.2f",si.sum); printf("n");printf("-");printf("-");printf("tt按任意键继续操作: ");getchar();getc

37、har();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;i<count;i+) tot1+=si.score1; tot2+=si.score2; tot3+=si.score3; tot4+=si.score4; tot5+=si.score5; tot6+=si.sco

38、re7; 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,tot4,tot5);printf("t其他tt扣款tt应发工资t所得税tt实际工资n"); printf("合计:t%ldtt%ldtt%ldtt%.2ftt%.2fn",tot6,tot7,tot8,tot9,tot10);printf("n输入任意键继续操作: n");getchar();getchar();system("cls");/*/ 保存函数,将数据保存到name文件下*/void save()FILE *fp;char name20; printf

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1