1、数据结构大作业 职工管理系统 #include #include#include #include#define LEN 15#define N 50 struct GZX float jbgz;/基本工资 float jj;/奖金 float zfgjj;/住房公积金 float jt;/津贴 float sjgz;/实际工资 int a;/当月是否已发;/工资项struct record char nameLEN+1; /姓名 int age; /年龄 char sex3; /性别 char time1LEN+1; / 出生年月 char time2LEN+1; /工作年月 char zh
2、iwuLEN+1; / 职务 char xueliLEN+1; / 学历 char addLEN+1; / 家庭地址 / char telLEN+1; / 电话号码 / struct GZX gzx; /工资项empN;typedef struct char nameLEN+1;/用户名 char password7;/密码user;/登陆身份int k=1,n,m; /* 定义全局变量 */ void seek1();/查询基本信息void seek2();/查询工资信息void modify1();/修改基本信息void modify2();/修改工资信息void insert();/插入
3、函数void sort(); /按姓名排序void pass_screen();/登陆界面void del();/删除函数void display1();/显示基本信息void display2();/显示工资信息void save();/保存当前信息void menu1();/总管理员界面void menu2(); /人事总管界面void menu3();/财务主管界面void menu4();/普通用户界面int main() char *p=employe.txt; FILE *fp; int i=0; if (fp=fopen(employe.txt,r)=NULL) printf(O
4、pen file %s error! Strike any key to exit!,p); system(pause); exit(0); system(color f1); while(fscanf(fp,%s %d %s %s %s %s %s %s %s %f %f %f %f %f %d,empi.name,&empi.age,empi.sex, empi.time1,empi.time2,empi.zhiwu,empi.xueli,empi.add,empi.tel,&empi.gzx.jbgz, &empi.gzx.jj,&empi.gzx.jt,&empi.gzx.zfgjj,
5、&empi.gzx.sjgz,&empi.gzx.a)=15) i+; i=i; fclose(fp);n=i; pass_screen(); system(pause); return 0; void help() printf(n0.欢迎使用系统帮助n); printf(n1.初次使用,请先录入信息n); printf(n2.进入系统后,按照提示进行操作n); printf(n3.修改信息后,切记按保存键n); printf(n4.输入信息后,按回车键进行操作n); printf(n5.谢谢您的使用!n); void pass_screen() /登陆界面 user pass_messag
6、e4; int j=0; char *p=pass_message.txt; FILE *fp; int i=0; char sname15; char spassword7,c; if(fp=fopen(pass_message.txt,r)=NULL) printf(open file %s error! strike any key to exit!,p); system(pause); exit(0); while(fscanf(fp,%s %s,pass_messagei.name,pass_messagei.password)=2) i+; i=i; printf(1.总管理员请以
7、总管理员身份登陆n); printf(2.人事主管请以人事主管身份登陆n); printf(3.财务主管请以财务主管身份登陆n); printf(4.普通用户 用户名和密码均为:000000n); printf(nnnnn); printf(ttt请输入账号:n); printf(ttt); scanf(%s,sname); printf(ttt请输入密码:n); printf(ttt); while(j6) c=getch(); if(c=8)|(c=13)break; else printf(); spasswordj=c; j+; spasswordj=0; system(cls); i
8、f(strcmp(pass_message0.name,sname)=0)&(strcmp(pass_message0.password,spassword)=0) while(k)menu1(); else if(strcmp(pass_message1.name,sname)=0)&(strcmp(pass_message1.password,spassword)=0) while(k)menu2(); else if(strcmp(pass_message2.name,sname)=0)&(strcmp(pass_message2.password,spassword)=0) while
9、(k)menu3(); else if(strcmp(pass_message3.name,sname)=0)&(strcmp(pass_message3.password,spassword)=0) while(k)menu4(); else printf(用户名或密码输入错误n); void seek1() /查询一般信息 int i,item,flag; char s121; printf(-n); printf(-1.按职务查询-n); printf(-2.按姓名查询-n); printf(-3.退出本菜单-n); printf(-n); while(1) printf(请选择子菜单编
10、号:); scanf(%d,&item); flag=0; switch(item) case 1: printf(请输入要查询的职工的职务:n); scanf(%s,s1); for(i=0;in;i+) if(strcmp(empi.zhiwu,s1)=0) flag=1; printf(职工姓名 职工年龄 性别 出生年月 工作年月 职务 学历 地址 电话 n); printf(-n); printf(%6s %5d %6s %11s %11s %9s %6s %6s %11sn,empi.name,empi.age, empi.sex,empi.time1,empi.time2,empi
11、.zhiwu,empi.xueli, empi.add,empi.tel); if(flag=0) printf(该职务不存在!n); break; case 2: printf(请输入要查询的职工的姓名:n); scanf(%s,s1); for(i=0;in;i+) if(strcmp(empi.name,s1)=0) flag=1; printf(职工姓名 职工年龄 性别 出生年月 工作年月 职务 学历 地址 电话 n); printf(-n); printf(%6s %5d %6s %11s %11s %9s %6s %6s %11sn,empi.name,empi.age, empi
12、.sex,empi.time1,empi.time2,empi.zhiwu,empi.xueli, empi.add,empi.tel); if(flag=0) printf(该姓名不存在!n); break; case 3:return; default:printf(请在1-3之间选择n); void seek2() /查询工资信息 int i,item,flag; char s121; printf(-n); printf(-1.按职务查询-n); printf(-2.按姓名查询-n); printf(-3.退出本菜单-n); printf(-n); while(1) printf(请选择子菜单编号:); scanf(%d,&item); flag=0; switch(item) case 1: printf(请输入要查询的职工的职务:n); scanf(%s,s1); for(i=0;in;i+) if(strcmp(empi.zhiwu,s1)=0) flag=1; printf(职工姓名 基本工资 奖金 津贴 住房公积
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1