文档介绍:Forpersonaluseonlyinstudyandresearch;mercialuse节/*Note:YourchoiceisCIDE*/袂#include<>荿#include<>芅#include<>莂#defineN000000/*密码,实际请修改*/芃/********定义员工信息结构体********/肁structrecord莈{蒂intcode;/*员工编号*/莀charname[15];/*姓名*/葿charsex[3];/*性别*/肇charbirthday[15];/*生日*/薂charadd[30];/*地址*/螁chartel[13];/*电话号码*/膁charmail[20];/*邮箱*/袆charqq[20];袆};节蚈structStuLink/*员工编号信息链节点*/衿{羆intcode;/*员工编号*/蚂charname[15];/*姓名*/莀charsex[3];/*性别*/蚇charbirthday[15];/*生日*/肆charadd[30];/*地址*/肃chartel[13];/*电话号码*/袈charmail[20];/*邮箱*/蒆charqq[20];膆structStuLink*next;膀};薀膅intsizerecord=sizeof(structrecord);芅/**************录入文字*********************/薁voidInputWord(char*lx,char*p)羈{芈charword[20];莅printf("请输入%s:",lx);羂scanf("%s",word);螀strcpy(p,word);羇}蒅/************检测员工编号是否存在,若存在返回1*********/莃intexist(intn,FILE*fp)膈{structrecord*p;螆 蒅 蒀intflag=0;袀p=(structrecord*)malloc(sizerecord);/*申请一个新节点,用于读文件内容*/薅rewind(fp);薅while(!feof(fp))袁{莇 fread(p,sizerecord,1,fp);/*读出文件内容*/薇 if(p->code==n)蚅 {flag=1;break;}芁}聿returnflag;莆}螅/************检测姓名是否存在,若存在返回1*********/蚂charexist_name(chara[],FILE*fp)薇{structrecord*p;肅 袅 肃intflag=0;艿p=(structrecord*)malloc(sizerecord);/*申请一个新节点,用于读文件内容*/膈rewind(fp);羄while(!feof(fp))芀{羁 fread(p,sizerecord,1,fp);/*读出文件内容*/羇 if(strcmp(p->name,a)==0)肄 {flag=1;break;}蚁}荿returnflag;蚆}肄肂/**************计算文件长度*********************/膁intFileLenth(FILE*fp)蒅{膄longflen;蒃 fseek(fp,0L,2);/*到文件末尾*/薈flen=ftell(fp);/*取位置*/蒈rewind(fp);/*回到文件头*/芄returnflen;薀}芀芆莄/**************创建员工编号信息表*********************/羀voidreadfile()螈{肅longstart,filelen;蒄FILE*fp;莁structrecord*s;蒀intamount=0;//记录员工编号个数肈薄if((fp=fopen("stuinf","a+"))==NULL)fp=fopen("stuinf","w+");螂start=FileLenth(fp);羈s=(structrecord*)malloc(sizerecord);/*申请一个结构体空间*/袇while(1)蚃{printf("请输入员工编号(输入0退回上一步):");膃scanf("%d",&s->code);蚀if(s->code==0)/*退出*/薆{if(amount==0)break;/*无录入数据直接退出*/蚃filelen=FileLenth(fp);莀fseek(fp,start,0);肈printf("|员工编号\t|姓名\t|性别\t|生日|地址|电话号码|邮箱|qq|\n");莅while(ftell(fp)<filelen)/*将新录入的内容打印出来*/螃{螁fread(s,sizerecord,1,fp);/*