c语言企业员工管理系统_第1页
c语言企业员工管理系统_第2页
c语言企业员工管理系统_第3页
c语言企业员工管理系统_第4页
c语言企业员工管理系统_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

1、全部源代码:#include #include #include #include #define max 100 char filename20; /*文件名 */ file *fp; int n; /*当前该厂人数 */ struct date /*时间结构体 */ int year; int mouth; int day; ; struct person /*员工信息结构体*/ char name10; /*姓名 */ int age; /*年龄 */ char job10; /*工作 */ char sex10; /*性别 */ char address20; /*地址 */ char

2、 phone10; /*电话 */ struct date in_time; /*入厂时间 */ t,workermax; /* 录入模块 */ void input() int i; system(cls);/system(cls); printf(nn请输入文件名 n); scanf(%s,filename); printf(开始输入员工的信息n); printf(n请输入现有员工人数n); scanf(%d,&n); if(fp=fopen(filename,w)=null) printf(不能建立 !n); exit(0); for(i=0;in;i+) printf(第%d个

3、人的信息 :n,i+1); printf(姓名 n); scanf(%s,); printf(年龄 n); scanf(%d,&workeri.age); printf(工作 n); scanf(%s,workeri.job); printf(性别 n); scanf(%s,workeri.sex); printf(地址 n); scanf(%s,workeri.address); printf(电话 n); scanf(%s,workeri.phone); printf(入厂年 n); scanf(%d,&workeri.in_time.year);

4、printf(入厂月 n); scanf(%d,&workeri.in_time.mouth); printf(入厂日 n); scanf(%d,&workeri.in_time.day); printf(录入完毕 ,按任意键返回主菜单n); getch(); for(i=0;in;i+) fprintf(fp,%s %d %s %s %s %s %d-%d-%dn,,workeri.age,workeri.job,workeri.sex,workeri.address,workeri.phone,workeri.in_time.year,workeri

5、.in_time.mouth,workeri.in_time.day); fclose(fp); /* 输出模块 */ void output() int i; if(fp=fopen(filename,r)=null) printf( 暂时未有任何信息,请按任意键返回主菜单进行信息录入n); getch(); exit(0); system(cls); printf( 该厂的员工信息:n); printf(姓名 t年龄 t工作 t性别 t地址 t电话 t入厂时间 n); for(i=0;in;i+) fscanf(fp,%s %d %s %s %s %s %d-%d-%d,workeri.n

6、ame,&workeri.age,workeri.job,workeri.sex,workeri.address,workeri.phone,&workeri.in_time.year,&workeri.in_time.mouth,&workeri.in_time.day); printf(%st%dt%st%st%st%st%d-%d-%d n,,workeri.age,workeri.job,workeri.sex,workeri.address,workeri.phone,workeri.in_time.year,workeri.i

7、n_time.mouth,workeri.in_time.day); fclose(fp); printf( 输出完毕 ,按任意键返回主菜单n); getch(); /* 保存模块 */ void save() int i; if(fp=fopen(filename,w)=null) /*打开文件 */ printf(n 不能打开该文件! ); exit(0); for(i=0;in;i+) fprintf(fp,%s %d %s %s %s %s %d-%d-%dn,,workeri.age,workeri.job,workeri.sex,workeri.addres

8、s,workeri.phone,workeri.in_time.year,workeri.in_time.mouth,workeri.in_time.day); fclose(fp); /* 读取信息 */ void read_message() int i; printf(输入文件名 n); scanf(%s,filename); printf(n请输入现有员工人数n); scanf(%d,&n); if(fp=fopen(filename,r)=null) printf( 暂时未有任何信息,请按任意键返回主菜单进行信息录入n); getch(); for(i=0;in;i+) fs

9、canf(fp,%s %d %s %s %s %s %d-%d-%d,,&workeri.age,workeri.job,workeri.sex,workeri.address,workeri.phone,&workeri.in_time.year,&workeri.in_time.mouth,&workeri.in_time.day); fclose(fp); /* 修改模块 */ void modify() int i,flag,choice; char ch,namekey10; flag=0; system(cls); print

10、f( 开始修改 n); do printf(请输入要修改的员工姓名n); scanf(%s,namekey); for(i=0;in;i+) if(strcmp(,namekey)=0) printf(是否修改此人(y/n)n); printf(姓名 t年龄 t工作 t性别 t地址 t电话 t入厂时间 n); printf(%st%dt%st%st%st%st%d-%d-%d n,,workeri.age,workeri.job,workeri.sex,workeri.address,workeri.phone,workeri.in_time.y

11、ear,workeri.in_time.mouth,workeri.in_time.day); getchar(); /*接收回车 */ ch=getchar(); if(ch=y) printf( *您要修改那一项?*nn); printf( *1,姓名 *nn); printf( *2,年龄 *nn); printf( *3,工作 *nn); printf( *4,性别 *nn); printf( *5,地址 *nn); printf( *6,电话 *nn); printf( *7,入厂年 *nn); printf( *8,入厂月 *nn); printf( *9,入厂日 *nn); pr

12、intf( 请选择 (1-9)n); scanf(%d,&choice); switch(choice) case 1: printf(输入修改后的姓名n); scanf(%s,); break; case 2: printf(输入修改后的年龄n); scanf(%d,&workeri.age); break; case 3: printf(输入修改后的工作n); scanf(%s,workeri.job); break; case 4: printf(输入修改后的性别n); scanf(%s,workeri.sex); break; case 5: p

13、rintf(输入修改后的地址n); scanf(%s,workeri.address); break; case 6: printf(输入修改后的电话n); scanf(%s,workeri.phone); break; case 7: printf(输入修改后的入厂年n); scanf(%d,&workeri.in_time.year); break; case 8: printf(输入修改后的入厂月n); scanf(%d,&workeri.in_time.mouth); break; case 9: printf(输入修改后的入厂日n); scanf(%d,&wo

14、rkeri.in_time.day); break; printf(修改后的信息 n); printf(姓名 t年龄 t工作 t性别 t地址 t电话 t入厂时间 n); printf(%st%dt%st%st%st%st%d-%d-%d n,,workeri.age,workeri.job,workeri.sex,workeri.address,workeri.phone,workeri.in_time.year,workeri.in_time.mouth,workeri.in_time.day); else break; else if(i=n) printf(此人不

15、存在 n); printf(n是否继续输入 (y/n)n); getchar(); /*接收回车 */ ch=getchar(); if(ch=y) printf(继续 n); flag=1; else flag=0; while(flag=1); printf(修改完毕 , 按任意键返回主菜单n) ; getch(); /* 添加模块 */ void add() int i,flag=0; char ch; system(cls); printf(n 开始添加新员工n); printf( *-*nn); do i=n; printf(n 请输入添加职工的信息( 姓名 , 年龄 , 工作 ,

16、性别 , 地址 , 电话 , 入厂时间)n); printf(姓名 n); scanf(%s,); printf(年龄 n); scanf(%d, &workeri.age); printf(工作 n); scanf(%s,workeri.job); printf( 性别 n); scanf(%s,workeri.sex); printf(地址 n); scanf(%s,workeri.address); printf(电话 n); scanf( %s,workeri.phone); printf(入厂年 n); scanf(%d,&workeri.in

17、_time.year); printf(入厂月 n); scanf(%d,&workeri.in_time.mouth); printf(入厂日 n); scanf(%d,&workeri.in_time.day); n+; printf(n添加成功 !是否继续输入(y/n)n); getchar(); /*接收回车 */ ch=getchar(); if(ch=y) printf(继续 n); flag=1; else flag=0; while(flag=1); printf(添加完毕 ,按任意键返回主菜单n) ; getch(); /* 删除模块 */ void del(

18、) int i,flag; char ch,namekey10; flag=0; system(cls); printf(开始删除 n); do printf(请输入要删除员工的名字n); scanf(%s,namekey); for(i=0;in;i+) if(strcmp(,namekey)=0) /*查找此人 */ printf(是否删除此人(y/n)n); printf(姓名 t年龄 t工作 t性别 t地址 t电话 t入厂时间 n); printf(%st%dt%st%st%st%st%d-%d-%d n,,workeri.age,wor

19、keri.job,workeri.sex,workeri.address,workeri.phone,workeri.in_time.year,workeri.in_time.mouth,workeri.in_time.day); getchar(); /*接收回车 */ ch=getchar(); if(ch=y) for(;in;i+) workeri=workeri+1; n-; else break; else if(i=n) printf(此人不存在 n); printf(n是否继续输入 (y/n)n); getchar(); /*接收回车 */ ch=getchar(); if(c

20、h=y) printf(继续 n); flag=1; else flag=0; while(flag=1); printf(操作完毕 ,按任意键返回主菜单n) ; getch(); /* 更新模块 */ void renew() int i; do system(cls); printf(nnn *更新员工信息*nn); printf( 按 1,添加员工信息nn); printf( 按 2,删除员工信息nn); printf( 按 3,修改员工信息nn); printf( 按 0, 返回主菜单 n); printf( 请选择 (0-3)n); scanf(%d,&i); switch(

21、i) case 1: add(); break; case 2: del(); break; case 3: modify(); break; case 0: break; while(i!=0); save(); /* 按姓名查找 */ void name_cha() int i,j; char namekey10; j=0; system(cls); printf( 输入要查询的员工姓名n); scanf(%s,namekey); for(i=0;in;i+) if(strcmp(,namekey)=0) /*查找此人 */ printf(-员工信息 -n); pr

22、intf(姓名 t年龄 t工作 t性别 t地址 t电话 t入厂时间 n); printf(%st%dt%st%st%st%st%d-%d-%d n,,workeri.age,workeri.job,workeri.sex,workeri.address,workeri.phone,workeri.in_time.year,workeri.in_time.mouth,workeri.in_time.day); else j+; if(j=n) printf(此人不存在 n); printf(按任意键返回主菜单n); getch(); /* 按年龄查找 */ void ag

23、e_cha() int i,j; int agekey; j=0; system(cls); printf( 输入要查询员工的年龄n); scanf(%d,&agekey); for(i=0;in;i+) if(workeri.age=agekey) printf(-员工信息 -n); printf(姓名 t年龄 t工作 t性别 t地址 t电话 t入厂时间 n); printf(%st%dt%st%st%st%st%d-%d-%d n,,workeri.age,workeri.job,workeri.sex,workeri.address,workeri.pho

24、ne,workeri.in_time.year,workeri.in_time.mouth,workeri.in_time.day); else j+; if(j=n) printf(此人不存在 n); printf(按任意键返回主菜单n); getch(); /* 按工作查找 */ void job_cha() int i,j; char jobkey10; j=0; system(cls); printf(输入要查询的员工职务n); scanf(%s,jobkey); for(i=0;in;i+) if(strcmp(workeri.job,jobkey)=0) printf(-员工信息

25、-n); printf(姓名 t年龄 t工作 t性别 t地址 t电话 t入厂时间 n); printf(%st%dt%st%st%st%st%d-%d-%d n,,workeri.age,workeri.job,workeri.sex,workeri.address,workeri.phone,workeri.in_time.year,workeri.in_time.mouth,workeri.in_time.day); else j+; if(j=n) printf(此人不存在 n); printf(按任意键返回主菜单n); getch(); /* 查询模块 */ v

26、oid inquire() int i; do system(cls); printf(nnn *查询员工信息*nn); printf( *1,按姓名查询 *nn); printf( *2,按年龄查询 *nn); printf( *3,按工作查询 *nn); printf( *0,返回主菜单 n); printf( 请选择 (0-3)n); scanf(%d,&i); switch(i) case 1: name_cha();break; case 2: age_cha(); break; case 3: job_cha();break; case 0: break; while(i!

27、=0); /* 排列模块 */ void line() int i,j; system(cls); printf(-按年龄排序 -nn); for(i=0;in-1;i+) for(j=i+1;jworkerj.age) t=workeri; workeri=workerj; workerj=t; printf(姓名 t年龄 t工作 t性别 t地址 t电话 t入厂时间 n); for(i=0;in;i+) printf(%st%dt%st%st%st%st%d-%d-%d n,,workeri.age,workeri.job,workeri.sex,workeri.ad

28、dress,workeri.phone,workeri.in_time.year,workeri.in_time.mouth,workeri.in_time.day); printf(按任意键返回主菜单n); getch(); /* 按年龄统计 */ void count_age() int i,j; int agekey; j=0; system(cls); printf( 输入要统计员工的年龄n); scanf(%d,&agekey); for(i=0;in;i+) if(workeri.age=agekey) printf(-员工信息 -n); printf(姓名 t年龄 t工作

29、 t性别 t地址 t电话 t入厂时间 n); printf(%st%dt%st%st%st%st%d-%d-%d n,,workeri.age,workeri.job,workeri.sex,workeri.address,workeri.phone,workeri.in_time.year,workeri.in_time.mouth,workeri.in_time.day); else j+; if(j=n) printf(暂无该年龄段员工n); printf(按任意键返回主菜单n); getch(); /* 按职务统计 */ void count_job() int

30、 i,j; char jobkey10; j=0; system(cls); printf(输入要统计的员工职务n); scanf(%s,jobkey); for(i=0;in;i+) if(strcmp(workeri.job,jobkey)=0) printf(-员工信息 -n); printf(姓名 t年龄 t工作 t性别 t地址 t电话 t入厂时间 n); printf(%st%dt%st%st%st%st%d-%d-%d n,,workeri.age,workeri.job,workeri.sex,workeri.address,workeri.phone,w

31、orkeri.in_time.year,workeri.in_time.mouth,workeri.in_time.day); else j+; if(j=n) printf(暂无该职务或该职务暂时无人n); printf(按任意键返回主菜单n); getch(); /* 按性别统计 */ void count_sex() int i,j; char sexkey10; j=0; system(cls); printf(输入要统计的员工性别n); scanf(%s,sexkey); for(i=0;in;i+) if(strcmp(workeri.sex,sexkey)=0) printf(-

32、员工信息 -n); printf(姓名 t年龄 t工作 t性别 t地址 t电话 t入厂时间 n); printf(%st%dt%st%st%st%st%d-%d-%d n,,workeri.age,workeri.job,workeri.sex,workeri.address,workeri.phone,workeri.in_time.year,workeri.in_time.mouth,workeri.in_time.day); else j+; if(j=n) printf(暂无该性别员工n); printf(按任意键返回主菜单n); getch(); /* 统计模块 */ void count() int i; do system(cls); printf(nnn *统计员工信息 *nn); printf( 按 1, 统计某年龄职工nn); printf( 按 2, 统计某职务员工nn); printf( 按 3, 统计某性别职工nn); printf( 按 0, 返回主菜单 nn); printf( 请选择 (0-3):n); scanf

温馨提示

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

最新文档

评论

0/150

提交评论