收藏 分销(赏)

管理系统C源程序.doc

上传人:人****来 文档编号:4586423 上传时间:2024-09-30 格式:DOC 页数:22 大小:44.50KB 下载积分:10 金币
下载 相关 举报
管理系统C源程序.doc_第1页
第1页 / 共22页
管理系统C源程序.doc_第2页
第2页 / 共22页


点击查看更多>>
资源描述
管理系统C源程序 22 2020年4月19日 文档仅供参考 #include <stdio.h> #include <malloc.h> #include <stdlib.h> #include <string.h> # define max 10 struct salary_Info { int card_no; //工资卡号 char name[20]; //姓名 int month; //月份 int init_salary; //应发工资 int water_rate; //水费 int electric_rate; //电费 int tax; //税金 int final_salary; //实发工资 }si[max]; //SI[MAX]中每个数组元素对应一个职工工资信息 int main() { void menu(); void Wrong(); void select(); void input(); void inquire(); void stats(); void save(); void read(); void end(); select(); } void menu() { printf("********************工资管理系统********************\n"); printf("* *\n"); printf("* 1:信息输入 *\n"); printf("* 2:信息添加 *\n"); printf("* 3:信息浏览 *\n"); printf("* 4:信息查询 *\n"); printf("* 5:信息统计 *\n"); printf("* 6:信息保存 *\n"); printf("* 7:信息读入 *\n"); printf("* 8: 结束 *\n"); printf("****************************************************\n"); } void Wrong() { printf("输入错误!\n"); } void select() { void input(); void add(); void scan(); void inquire(); void stats(); void save(); void read(); void end(); int choose; system("cls"); menu(); scanf("%d",&choose); switch(choose) { case 1:input();break; case 2:add();break; case 3:scan();break; case 4:inquire();break; case 5:stats();break; case 6:save();break; case 7:read();break; case 8:end();break; default:Wrong();break; } } void input() { void taxes(); int q; static int i=-1; system("cls"); a: i++; printf("工资卡号:"); scanf("%d",&si[i].card_no); printf("姓名:"); scanf("%s",si[i].name); printf("月份:"); scanf("%d",&si[i].month); printf("应发工资:"); scanf("%d",&si[i].init_salary); printf("水费:"); scanf("%d",&si[i].water_rate); printf("电费:"); scanf("%d",&si[i].electric_rate); printf("税金:"); taxes(); printf("是否继续:(1:继续 2:返回)\n"); scanf("%d",&q); if(q==1) {goto a;} else(q==2); {system("cls"); select();} } void add() { input(); } void taxes() { int t; static int p=-1; p++; if(si[p].init_salary<=800) t=0; else if (si[p].init_salary>800&&si[p].init_salary<=1400) t=(si[p].init_salary-800)*0.05; else if (si[p].init_salary>1400) t=(si[p].init_salary-1400)*0.1; si[p].tax=t; si[p].final_salary=si[p].init_salary-si[p].water_rate-si[p].electric_rate-t; printf("%d\n",t); printf("实发工资:"); printf("%d\n",si[p].final_salary); } void scan() { void rank1(); void rank2(); void rank3(); int w; printf("选择浏览方式:(1:姓名 2:卡号 3:工资)\n"); scanf("%d",&w); if(w==1) rank1(); else if(w==2) rank2(); else if(w==3) rank3(); } void rank1() { struct salary_Info t; int i,j,k; printf("卡号\t姓名\t\t月份\t应发工资\t水费\t电费\t税金\t实发工资\n"); for(i=0;i<=max;i++) { for(j=i+1;j<=max+1;j++) if(strcmp(si[i].name,si[j].name)<0) { t=si[i]; si[i]=si[j]; si[j]=t; } printf("%d\t%s\t\t%d\t%d\t\t%d\t%d\t%d\t%d \n",si[i].card_no,si[i].name,si[i].month,si[i].init_salary,si[i].water_rate,si[i].electric_rate,si[i].tax,si[i].final_salary); } printf("1:返回\n"); scanf("%d",&k); if(k==1) { system("cls"); select(); } } void rank2() { int i,j,k; struct salary_Info t; printf("卡号\t姓名\t\t月份\t应发工资\t水费\t电费\t税金\t实发工资\n"); for(i=0;i<max;i++) { for(j=i+1;j<max+1;j++) if(si[j].card_no>si[i].card_no) { t=si[j]; si[j]=si[i]; si[i]=t; } printf("%d\t%s\t\t%d\t%d\t\t%d\t%d\t%d\t%d \n",si[i].card_no,si[i].name,si[i].month,si[i].init_salary,si[i].water_rate,si[i].electric_rate,si[i].tax,si[i].final_salary); } printf("1:返回\n"); scanf("%d",&k); if(k==1) { system("cls"); select(); } } void rank3() { int i,j,k; struct salary_Info t; printf("卡号\t姓名\t\t月份\t应发工资\t水费\t电费\t税金\t实发工资\n"); for(i=0;i<max;i++) { for(j=i+1;j<max+1;j++) if(si[i].final_salary<si[j].final_salary) { t=si[i]; si[i]=si[j]; si[j]=t; } printf("%d\t%s\t\t%d\t%d\t\t%d\t%d\t%d\t%d\n",si[i].card_no,si[i].name,si[i].month,si[i].init_salary,si[i].water_rate,si[i].electric_rate,si[i].tax,si[i].final_salary); } printf("1:返回\n"); scanf("%d",&k); if(k==1) { system("cls"); select(); } } void inquire() { void inquire1(); void inquire2(); int w; printf("选择查询方式:( 1:姓名 2:卡号)\n"); scanf("%d",&w); if(w==1) inquire1(); else if(w==2) inquire2(); } void inquire1() { int i,k,e[20]; struct salary_Info t; printf("请输入要查询的姓名:"); scanf("%s",e); printf("卡号\t姓名\t\t月份\t应发工资\t水费\t电费\t税金\t实发工资\n"); for(i=0;i<max;i++) { if(strcmp(e,si[i].name)==0) printf("%d\t%s\t\t%d\t%d\t\t%d\t%d\t%d\t%d\n",si[i].card_no,si[i].name,si[i].month,si[i].init_salary,si[i].water_rate,si[i].electric_rate,si[i].tax,si[i].final_salary); } printf("1:返回\n"); scanf("%d",&k); if(k==1) { system("cls"); select(); } } void inquire2() { int i,k,f; struct salary_Info t; printf("请输入要查询的卡号:"); scanf("%d",&f); printf("卡号\t姓名\t\t月份\t应发工资\t水费\t电费\t税金\t实发工资\n"); for(i=0;i<max;i++) { if(f==si[i].card_no) printf("%d\t%s\t\t%d\t%d\t\t%d\t%d\t%d\t%d\n",si[i].card_no,si[i].name,si[i].month,si[i].init_salary,si[i].water_rate,si[i].electric_rate,si[i].tax,si[i].final_salary); } printf("1:返回\n"); scanf("%d",&k); if(k==1) { system("cls"); select(); } } void stats() { void sum(); int a,i; printf("请输入卡号:"); scanf("%d",&a); for(i=0;i<max;i++) { if(si[i].card_no=a) { printf("卡号\t姓名\t\t月份\t应发工资\t水费\t电费\t税金\t实发工资\n"); printf("%d\t%s\t\t%d\t%d\t\t%d\t%d\t%d\t%d\n",si[i].card_no,si[i].name,si[i].month,si[i].init_salary,si[i].water_rate,si[i].electric_rate,si[i].tax,si[i].final_salary); break; } } sum(); } void sum() { int sum=0; int i,j,k; printf("输入统计的起始月份:"); scanf("%d",&j); printf("输入统计的结束月份:"); scanf("%d",&k); for(i=0;i<max;i++) { if(si[i].month>=j && si[i].month<=k) { sum=sum+si[i].final_salary; } } printf("总工资为:%d\n",sum); printf("1:返回\n"); scanf("%d",&k); if(k==1) { system("cls"); select(); } } void save() /*保存函数*/ { FILE *fp; int i,k; char filepath[30]; printf("\n\t输入要保存的文件路径:"); fflush(stdin); gets(filepath); if((fp=fopen(filepath,"w"))==NULL) { printf("\n\t保存失败!\n"); end(0); } for(i=0;i<max;i++) { fprintf(fp,"%d\t%s\t\t%d\t%d\t\t%d\t%d\t%d\t%d \n",si[i].card_no,si[i].name,si[i].month,si[i].init_salary,si[i].water_rate,si[i].electric_rate,si[i].tax,si[i].final_salary); } fclose(fp); printf("职工信息已经保存到%s中!\n",filepath); system("pause"); printf("1:返回\n"); scanf("%d",&k); if(k==1) { system("cls"); select(); } } void read() /*读取函数*/ { FILE *fp; int i,now,k; char filepath[30]; printf("\n请输入要读入的文件路径:"); fflush(stdin); gets(filepath); if((fp=fopen(filepath,"r"))==NULL) { printf("找不到%s文件!\n",filepath); system("pause"); end(0); } now=0; for(i=0;i<max && !feof(fp);i++) { fscanf(fp,"%d\t%s\t\t%d\t%d\t\t%d\t%d\t%d\t%d \n",&si[i].card_no,si[i].name,&si[i].month,&si[i].init_salary,&si[i].water_rate,&si[i].electric_rate,&si[i].tax,&si[i].final_salary); now++; } fclose(fp); printf("保存在%s中的文件已经读入!\n",filepath); system("pause"); printf("1:返回\n"); scanf("%d",&k); if(k==1) { system("cls"); select(); } } void end() { printf("********************谢谢使用********************\n"); }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服