员工工资管理系统源代码.docx

上传人:b****5 文档编号:4501519 上传时间:2022-12-01 格式:DOCX 页数:17 大小:20KB
下载 相关 举报
员工工资管理系统源代码.docx_第1页
第1页 / 共17页
员工工资管理系统源代码.docx_第2页
第2页 / 共17页
员工工资管理系统源代码.docx_第3页
第3页 / 共17页
员工工资管理系统源代码.docx_第4页
第4页 / 共17页
员工工资管理系统源代码.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

员工工资管理系统源代码.docx

《员工工资管理系统源代码.docx》由会员分享,可在线阅读,更多相关《员工工资管理系统源代码.docx(17页珍藏版)》请在冰豆网上搜索。

员工工资管理系统源代码.docx

员工工资管理系统源代码

#include〈stdio。

h>

#include

h〉

typedefstruct

{

intbasic;//基本工资

intposition;//岗位工资

intsubsidy;//津贴

intwages;//奖金

intsum;//总工资

}money;

typedefstruct

{

charnum[20];//职工号

charname[20];//姓名

intage;//年龄

charsex[20];//性别

moneysalary;//工资

}employee;

intPrint_jinru();//账号密码输入

voidFscan_information();//“职工信息.txt”文件写入

voidPrint_staff();//全体员工

voidPrint_empl1(charx[51]);//按职工号查询

voidPrint_empl2(chars[51]);//按姓名查询

voidPrint_MainInterface();//主界面

voidPrint_Interface_1();//职工信息录入界面

voidPrint_Interface_2();//职工信息查询界面

voidPrint_Interface_3();//职工工资排序界面

voidPrint_Interface_4();//职工总工资

voidPrint_Interface_5();//文件读出

voidqsort(intl,intr);//快速排序

voidPrint_delete(intt);//删除职工信息

voidPrint_Interface_2_1(intt);//职工信息修改界面

intfyanzheng(chars1[],chars2[]);//密码验证函数

employeest[500];//记录职工信息的函数

intn;//职工总数

voidmain()

intx;

employeeem;

printf(”@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n");

printf("@@@@欢迎使用员工工资管理系统@@@@\n”);

printf("@@@@制作人:

刘爽@@@@\n”);

printf("@@@@在使用中产生的任何问题,欢迎进行批评指正@@@@\n”);

printf(”@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\n”);

printf("\n");

printf("\n”);

printf(”\n”);

if(Print_jinru())

{

Fscan_information();

Print_MainInterface();

elsereturn;

}

voidFscan_information()

FILE*fp;

inti;

if((fp=fopen("职工信息.txt”,"r”))==NULL)

printf("cannotopenthisfile\n");

return;

}

fscanf(fp,”%d”,&n);

for(i=1;i<=n;i++)

{

fscanf(fp,"%s%s%d%s%d%d%d",st[i]。

num,st[i]。

name,&st[i].age,st[i].sex,&st[i].salary。

basic,&st[i].salary。

subsidy,&st[i].salary.wages);

st[i].salary.sum=st[i]。

salary。

basic+st[i].salary。

subsidy+st[i].salary。

wages;

fclose(fp);

intfyanzheng(chars1[],chars2[])

FILE*fp1,*fp2;

charstr1[40]="",str2[40]="”,st;

intt;

if((fp1=fopen(”账号验证.in”,”r”))==NULL)

{

printf("cannotopenthisfile\n");

return0;

}

t=0;

st=fgetc(fp1);

while(st!

=’#')

str1[t]=st;

t++;

st=fgetc(fp1);

if((fp2=fopen("密码验证.in”,”r”))==NULL)

{

printf("cannotopenthisfile\n");

return0;

t=0;

st=fgetc(fp2);

while(st!

=’#’)

{

str2[t]=st;

t++;

st=fgetc(fp2);

fclose(fp1);

fclose(fp2);

if((strcmp(str1,s1)==0)&&(strcmp(str2,s2)==0))

return1;

else

return0;

}

intPrint_jinru()

{

intf,d;

charx[20],y[20];

f=0;

d=0;

while

(1)

{

printf("请输入账号:

”);

scanf("%s",x);

getchar();

printf("请输入密码:

");

scanf("%s”,y);

getchar();

f=fyanzheng(x,y);

if(d>3)

{

printf("错误次数太多,退出系统\n");

return0;

}

if(f〉0)break;

else{

printf(”账号或密码输入错误,请重新输入\n");

d++;

}

printf("\n”);

printf("欢迎进入员工工资管理系统!

!

\n");

return1;

}

voidPrint_MainInterface()

{

intx;

printf(”\n");

printf("*************************华丽的分割线*************************\n");

printf(”\n");

printf("1。

职工信息录入\n");

printf("2。

职工信息查询\n");

printf(”3。

职工工资排序\n”);

printf(”4。

统计职工总工资\n");

printf(”5。

保存到文件\n");

printf("6。

退出职工工资系统\n”);

printf("请选择所需操作:

”);

scanf(”%d”,&x);

if(x==1)

Print_Interface_1();

else

if(x==2)

Print_Interface_2();

else

if(x==3)

Print_Interface_3();

else

if(x==4)

Print_Interface_4();

else

if(x==5)

Print_Interface_5();

else

if(x==6)

{

printf(”***********************\n”);

printf("***********\n");

printf(”***********\n”);

printf(”****************************\n");

printf(”*********\n");

printf(”*********\n”);

printf(”**************************\n");

//printf(”233333333333333333333333333333333333333333333333333333\n");

return;

}

else

{

printf("输入命令错误,返回主菜单(再乱输入我找人打你啊)\n");

Print_MainInterface();

}

voidPrint_Interface_1()

{

n++;

if(n〉500)

printf(”超出职工最大数\n”);

Print_MainInterface();

printf("\n”);

printf("*************************妖精的分割线*************************\n”);

printf(”\n”);

printf(”新建职工号:

");

scanf("%s",st[n]。

num);

printf("姓名:

”);

scanf("%s",st[n].name);

printf("年龄:

”);

scanf(”%d”,&st[n]。

age);

printf("性别:

");

scanf("%s",st[n].sex);

printf("基本工资:

");

scanf("%d”,&st[n].salary。

basic);

printf("津贴:

");

scanf(”%d",&st[n].salary.subsidy);

printf("奖金:

");

scanf(”%d",&st[n]。

salary.wages);

st[n].salary.sum=st[n].salary.basic+st[n].salary。

subsidy+st[n]。

salary。

wages;

printf("职工信息已成功录入\n");

Print_MainInterface();

}

voidPrint_Interface_2()

intx;

chars[50],y[50];

printf("\n”);

printf(”*************************逗比的分割线*************************\n”);

printf(”\n”);

printf("1。

查询所有职工\n”);

printf(”2。

按职工号查询\n”);

printf(”3。

按职工姓名查询\n");

printf(”4.返回主菜单\n”);

printf("请选择查找方式:

\n");

scanf("%d",&x);

if(x==1)

Print_staff();

else

if(x==2)

printf("请输入职工工号:

”);

scanf("%s”,y);

Print_empl1(y);

else

if(x==3)

printf("请输入职工姓名:

”);

scanf(”%s",s);

Print_empl2(s);

}

else

if(x==4)

Print_MainInterface();

else

printf(”输入命令错误,返回上一层\n”);

Print_Interface_2();

voidPrint_Interface_3()

charch[10];

printf(”\n");

qsort(1,n);

printf("排序完成!

排序后结果请从查询全体职工处查看\n");

Print_MainInterface();

}

voidPrint_Interface_4()

{

inti,All=0;

charch[10];

printf(”\n”);

for(i=1;i<=n;i++)

All=All+st[i]。

salary。

sum;

printf("所有职工的总工资为:

%d\n”,All);

printf(”请输入任意字符并敲回车键返回主菜单\n”);

scanf(”%s”,&ch);

Print_MainInterface();

}

voidPrint_Interface_5()

FILE*fp;

charch[10];

inti;

if((fp=fopen("职工信息.txt",”w”))==NULL)

{

printf(”cannotopenthisfile\n");

return;

}

fprintf(fp,"%d\n",n);

for(i=1;i〈=n;i++)

fprintf(fp,"%s%s%d%s%d%d%d\n",st[i].num,st[i]。

name,st[i]。

age,st[i].sex,st[i]。

salary。

basic,st[i]。

salary.subsidy,st[i]。

salary。

wages);

fclose(fp);

printf("\n”);

printf(”已保存到文件\n”);

printf("\n”);

printf("请输入任意字符返回主菜单\n”);

scanf("%s”,&ch);

Print_MainInterface();

voidPrint_staff()

inti;

printf("\n”);

printf("*************************帅比的分割线*************************");

printf("\n”);

for(i=1;i〈=n;i++)

printf(”职工工号:

%s\n",st[i]。

num);

printf(”姓名:

%s\n”,st[i].name);

printf(”年龄:

%d\n",st[i]。

age);

printf("性别:

%s\n",st[i].sex);

printf("基本工资:

%d\n",st[i]。

salary.basic);

printf(”津贴:

%d\n",st[i].salary.subsidy);

printf("奖金:

%d\n",st[i].salary.wages);

printf(”总工资:

%d\n”,st[i]。

salary。

sum);

printf(”\n");

printf(”返回上一层\n");

Print_Interface_2();

voidPrint_empl1(charx[])

inti,t,y,d=0;

printf(”\n");

for(i=1;i〈=n;i++)

if(strcmp(x,st[i].num)==0)

t=i;

d=1;

printf("职工工号:

%s\n”,st[i].num);

printf(”姓名:

%s\n",st[i].name);

printf("年龄:

%d\n”,st[i]。

age);

printf(”性别:

%s\n",st[i]。

sex);

printf(”基本工资:

%d\n",st[i].salary。

basic);

printf(”津贴:

%d\n”,st[i].salary.subsidy);

printf(”奖金:

%d\n”,st[i]。

salary。

wages);

printf("总工资:

%d\n",st[i]。

salary.sum);

printf("\n");

break;

}

if(d>0)

{

printf(”如需删除请按2,修改请按1,返回请按0\n”);

scanf("%d",&y);

if(y==2)

Print_delete(t);

else

if(y==1)

Print_Interface_2_1(t);

else

if(y==0)

Print_Interface_2();

else

printf("输入命令错误,返回上一层(再乱输入我找人打你啊)\n");

Print_Interface_2();

else

printf("对不起,查无此人(本系统不包括路人甲乙丙,不要乱输—_—!

)\n");

printf(”请重新选择查询方式\n");

Print_Interface_2();

voidPrint_empl2(chars[])

{

inti,t,x,y=0;

printf(”\n");

for(i=1;i<=n;i++)

if(strcmp(s,st[i]。

name)==0)

{

t=i;

y=1;

printf(”职工工号:

%s\n",st[i].num);

printf(”姓名:

%s\n”,st[i]。

name);

printf(”年龄:

%d\n",st[i]。

age);

printf("性别:

%s\n”,st[i].sex);

printf("基本工资:

%d\n”,st[i]。

salary.basic);

printf(”津贴:

%d\n”,st[i].salary.subsidy);

printf("奖金:

%d\n",st[i]。

salary。

wages);

printf("总工资:

%d\n”,st[i].salary.sum);

printf("\n”);

break;

if(y〉0)

printf(”如需删除请按2,修改请按1,返回请按0(再乱输入我找人打你啊)\n");

scanf(”%d",&x);

if(x==2)

Print_delete(t);

else

if(x==1)

Print_Interface_2_1(t);

else

if(x==0)

Print_Interface_2();

else

{

printf("输入命令错误,返回上一层\n”);

Print_Interface_2();

}

else

{

printf("对不起,查无此人(本系统不包括路人甲乙丙,不要乱输-_-!

)\n");

printf("请重新选择查询方式\n”);

Print_Interface_2();

voidPrint_delete(intt)

{

st[t]。

salary.sum=0;

qsort(1,n);

n—-;

printf(”已删除该职工并排序,自动返回主菜单\n”);

Print_MainInterface();

}

voidPrint_Interface_2_1(intt)

{

intx;

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(”9.返回主菜单\n");

scanf(”%d”,&x);

switch(x)

{

case1:

scanf(”%s",st[t].num);break;

case2:

scanf("%s",st[t]。

name);break;

case3:

scanf("%d",st[t].age);break;

case4:

scanf(”%s”,st[t].sex);break;

case5:

scanf("%s”,st[t]。

salary.basic);break;

case6:

scanf("%d”,st[t]。

salary.subsidy);break;

case7:

scanf("%d",st[t]。

salary。

wages);break;

st[t].salary.sum=st[t]。

salary.basic+st[t]。

salary.subsidy+st[t].salary.wages;

if(x<=8)

Print_Interface_2();

else

if(x==9)

Print_MainInterface();

}

voidqsort(intl,intr)

{

inti,j,mid;

employeett;

i=l;

j=r;

mid=st[(l+r)/2]。

salary.sum;

do

while(st[i].salary。

sum>mid)i++;

while(st[j].salary.sum

if(i〈=j)

tt=st[i];

st[i]=st[j];

st[j]=tt;

i++;

j--;

}

}while(i〈=j);

if(i

if(l〈j)qsort(l,j);

}

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

当前位置:首页 > 高中教育 > 高中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1