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

下载本文档

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

文档简介

语言——企员工管理系统代码部分:<stdlib.h>employee{intduty[10];unsignedcharage;edu[10];inttel_office[13];mobile[13];structemployee*next;EMP*emp_first,*emp_end;voidaddemp(void);voidfindemp(void);voidvoidmodifyemp(void);voidsummaryemp(void);voidvoidresetpwd(void);voidreaddata(void);voidsavedata(void);intmodi_age(intintmodi_salary(ints);*modi_field(char*s,intn);

EMP*name);EMP*findnum(intnum);EMP*findtelephone(charEMP*name);voiddisplayemp(EMP*field,char*name);voidvoidbound(charch,intn);voidlogin();voidmenu();voidaddemp(){FILE*fp;EMPinti=0;if((fp=fopen("employee.dat","ab"))==NULL){printf("开文件employee.dat出!\n");return;}i++;emp1=(EMP*)malloc(sizeof(EMP));if(emp1==NULL){printf("内分配失败,按任意键出\n");return;}printf("输入第%个工的信息\n",i);printf("号:");printf("务:");scanf("%s",&emp1->duty);

printf("名:");scanf("%s",&emp1->name);printf("别:");printf("龄:");printf("化程度:scanf("%s",&emp1->edu);printf("资:");scanf("%d",&emp1->salary);printf("公电话:scanf("%s",&emp1->tel_office);printf("庭电话:scanf("%s",&emp1->tel_home);printf("动电话:scanf("%s",&emp1->mobile);printf("QQ:");scanf("%s",&emp1->qq);printf("址:");emp1->next=NULL;if(emp_first==NULL){}else{}gfirst=0;printf("\n");

printf("\n是否继续输?(y/n)");if(toupper(choice)!='Y'){fclose(fp);printf("\n输完毕,按任键返\n");return;}}while(1);}voidbound(charch,intn){while(n--)putch(ch);printf("\n");return;}/*次使用,进行用户信息初始*voidcheckfirst(){FILEpwd[9],pwd1[9],pwd2[9],pwd3[9],ch;inti;{printf("\n新系统,请进行相的初始化操作\n");

printf("\n设密码,请不要超过8位");putch('*');printf("\n再认一次密码for(i=0;i<8&&((pwd1[i]=getch())!=13);i++)putch('*');pwd[i]='\0';pwd1[i]='\0';if(strcmp(pwd,pwd1)!=0)printf("\n两密码输入不一致,请重新输入\n\n");}while(1);if((fp1=fopen("config.bat","wb"))==NULL){printf("\n系创建失败,请按任意键退出}i=0;while(pwd[i]){pwd2[i]=(pwd[i]^strt);putw(pwd2[i],fp1);i++;}fclose(fp1);printf("\n\n系初始化成功,按任意键退出后,再重新进入\n");}else{i=0;pwd[i]='\0';

pwd[i]='\0';}}voiddelemp(){intfindok=0;EMP*emp1,*emp2;name[10],choice;printf("\n输入要删除的员姓名scanf("%s",name);emp2=emp1;while(emp1){if(strcmp(emp1->name,name)==0){findok=1;printf("工%s的息如下:",emp1->name);printf("号printf("务%s\n",emp1->duty);printf("名printf("别%s\n",emp1->sex);printf("龄%d\n",emp1->age);printf("化程度:printf("资%d\n",emp1->salary);printf("公电话:printf("庭电话:%s\n",emp1->tel_home);printf("动电话:printf("QQ号:printf("址:%\ns",emp1->address);

printf("真的要删除该员工吗(y/n)");choice=getchar();&&return;if(emp1==emp_first)emp2->next=emp1->next;gsave=1;return;}else{emp2=emp1;}}{printf("\n没有找到姓名是%s信息!\n",name);}return;}voiddisplayemp(EMP*field,char{if(emp){printf("\n%s:%s息如下:printf("号:%d\n",emp->num);printf("务:printf("名:printf("别:%s\n",emp->sex);printf("龄:%d\n",emp->age);printf("化程度:%s\n",emp->edu);printf("资:printf("公电话:printf("庭电话:

printf("动电话:printf("QQ号码:%s\n",emp->qq);printf("址:%s\n",emp->address);}else{printf("料库中没有%s为:%s的员工!请重新确认}return;}EMP*name){EMPwhile(emp1){if(strcmp(name,emp1->name)==0)return}NULL;}EMP*findnum(intnum){EMPwhile(emp1){return}NULL;}EMP*findtelephone(char*name){EMP

while(emp1){(strcmp(name,emp1->tel_home)==0)||(strcmp(name,emp1->mobile)==0))}NULL;}EMP{EMPwhile(emp1){}NULL;}void{intstr[13];EMP查员工信息n");按名\n");按号\n");按话\n");按QQ号询\n");返主\n");

printf("\n请选择菜单:");choice=getchar();switch(choice){'1':printf("\n输入要查询的员姓名scanf("%s",str);姓"break;'2':printf("\n请输入要查询的工的工");scanf("%d",&num);工"break;'3':printf("\n输要查询员工的电:scanf("%s",str);电",str);break;'4':printf("\n输要查询的员工的号scanf("%s",str);emp1=findqq(str);displayemp(emp1,"QQ号"

break;'0':ret=1;break;}if(ret)break;}while(1);}voidlistemp(){EMPprintf("\n资料库中的员工息列\n");while(emp1){printf("号:printf("务:printf("名:printf("别:printf("龄:printf("化程度:printf("资:%d\n",emp1->salary);printf("公电话:printf("庭电话:%s\n",emp1->tel_home);printf("动电话:printf("QQ号码:printf("址:}printf("\n显示完毕,按任键退出\n");return;}

/*测登录密码*/voidlogin(){intpwd[9];printf("输入密码:");for(i=0;i<8&&((pwd[i]=getch())!=13);i++)putch('*');pwd[i]='\0';{printf("\n密错误,请重新输入\n");n--;}else}if(!n){printf("退出,你的三次输入密码错误}}voidmenu(){企业员工管理系统n");输员信息\n");查员信息\n");显员信息\n");修员信息\n");删员信息\n");

统员信息\n");重系密码\n");退系\n");printf("\n请选择您需要的操!choice=getchar();switch(choice){'1':break;'2':if(gfirst){printf("统信息中无员工信息,请先添加员工信息\n");break;}findemp();break;'3':if(gfirst){printf("统信息中无员工信息,请先添加员工信息\n");break;}break;'4':if(gfirst){printf("统信息中无员工信息,请先添加员工信息\n");break;}

modifyemp();break;'5':if(gfirst){printf("统信息中无员工信息,请先添加员工信息\n");break;}break;'6':if(gfirst){printf("统信息中无员工信息,请先添加员工信息\n");break;}break;'7':break;'0':}}while(choice<'0'||choice>'7');}while(1);}intmodi_salary(intsalary){intprintf("来的工资数为:printf("的工资数:");return(newsalary);

}intmodi_age(intintnewage;printf("来的年龄为%d",age);printf("的年龄scanf("%d",&newage);return(newage);}*modi_field(char*content,int{*str;str=malloc(sizeof(char)*len);{printf("存分配失败,按任意键退出");NULL;}printf("来%s为%s\n",field,content);printf("改为(内容不要超过d个符",len);scanf("%s",str);}voidmodifyemp(){EMPname[10],*newcontent;intprintf("\n请输入您要修改员工的信:emp1=findname(name);姓",name);if(emp1){printf("\n请入你要修改的内容选项\n");

修改职务修改文化程度修改办公室电话修改移动电话修改住址choice=getchar();switch(choice){'1':

修年\n");修工\n");修家电话n");修QQ号码\n");返\nnewcontent=modi_field("职务",emp1->duty,10);if(newcontent!=NULL){strcpy(emp1->duty,newcontent);}break;'2':emp1->age=modi_age(emp1->age);break;'3':newcontent=modi_field("文化程度",emp1->edu,10);if(newcontent!=NULL){strcpy(emp1->edu,newcontent);}break;'4':break;'5':newcontent=modi_field("办公室电话"if(newcontent!=NULL){}break;'6':

newcontent=modi_field("家庭电话",emp1->tel_home,13);if(newcontent!=NULL){strcpy(emp1->tel_home,newcontent);}break;'7':newcontent=modi_field("移动电话",emp1->mobile,12);if(newcontent!=NULL){}break;'8':newcontent=modi_field("QQ号",emp1->qq,10);{}break;'9':newcontent=modi_field("住址",emp1->address,30);if(newcontent!=NULL){strcpy(emp1->address,newcontent);}break;'0':return;}||gsave=1;printf("\n修改完毕,按任键退出\n");}return;}

/*取数据*void{FILE*fp;EMP{gfirst=1;return;}while(!feof(fp)){emp1=(EMP*)malloc(sizeof(EMP));if(emp1==NULL){printf("存分配失败!\n");return;}fread(emp1,sizeof(EMP),1,fp);if(emp_first==NULL){}else{}emp_end->next=NULL;}gfirst=0;fclose(fp);}voidresetpwd(){

inti;FILEprintf("\n请输入旧密码:for(i=0;i<8&&((pwd[i]=getch())!=13);i++)putch('*');pwd[i]='\0';{printf("\n密错误,请按任意键退出\n");return;}printf("\n设置新密码,请要超过位:");putch('*');printf("\n再认一次密码for(i=0;i<8&&((pwd1[i]=getch())!=13);i++)putch('*');pwd[i]='\0';pwd1[i]='\0';if(strcmp(pwd,pwd1)!=0)printf("\n两密码输入不一致,请重新输入\n\n");}while(1);if((fp1=fopen("config.bat","wb"))==NULL){printf("\n系创建失败,请按任意键退出}i=0;while(pwd[i]){

putw(pwd[i],fp1);i++;}fclose(fp1);printf("\n密码修改成功,按意键退出\n");return;}void{FILE*fp;EMPif((fp=fopen("employee.dat","wb"))==NULL){printf("开文件employee.dat出!\n");return;}while(emp1){fwrite(emp1,sizeof(EMP),1,fp)

温馨提示

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

最新文档

评论

0/150

提交评论