1、next=NULL;SLNode *ListInsert(SLNode *head,DataType x)/职工信息的插入 SLNode *p,*q,*s; p=head-next; if(q=(SLNode *)malloc(sizeof(SLNode)=NULL) q-born_date=x.born_date; age=x.age;tele_num=x.tele_num;job_num=x.job_num; strcpy(q-name,x.name);sex=x.sex;degree,x.degree);job,x.job);address,x.address); if(head-nex
2、t=NULL) /如果只有链表的头结点,没有其他的结点,直接插入在头结点后面 head-next=q;next- else /链表非空 for(;p;p=p-next) if(p-next!=NULL) if(strcmp(p-name,x.name)name,x.name)0) /位于两个结点之间 s=p- p- q-next=s; break; /else if(strcmp(p-name,x.name)=0)break; /如果姓名相同则不插入信息 else if(strcmp(p-p- /链表非空,并且在排序中是最后一个 p- q- break; if(strcmp(p- /位于链表头
3、结点之后的位置 s=head- head- return head;void print(SLNode *head)/职工信息的显示 for(SLNode *p=head-next)/输出所有职工的信息 printf(%s %c %ld %ld %s %s %s %ld %ldn,p-name,p-sex,p-born_date,p-age,p-degree,p-job,p-address,p-tele_num,p-job_num);void printLink(SLNode *head)/职工信息的显示 printf(职工名单:n姓名、性别、出生年月、年龄、学历、职务、住址、电话、工号n);
4、 print(head);void put(SLNode *head,FILE *fp)/职工信息的保存 SLNode *p; if(fp=fopen(Employee.txt,a)=NULL) 无法打开Employee.txt!n /exit(0); /return 0; for(p=head- fprintf(fp, if(fclose(fp)无法关闭void ListDelete(SLNode *head)/职工信息的删除 SLNode *p,*s; char x20; int a,job_num; s=head; /链表为空,输出:名单中无职工信息,无须删除!名单中无此职工信息,无须删
5、除! return;t*nt* 职工信息删除操作 *nt* *nt* 0.退出查询系统,回到主菜单tt 1.按姓名进行删除 t *nt* 2.按工号进行删除 tt *n while(1)请选择你要进行的操作: scanf(%d,&a); if(a=0) break; else if(a=1) printf(请输入要删除职工的姓名: /输入要删除的人的姓名 scanf(%s,x); for(p; /在链表中从头到尾查找输入的人的姓名name,x)=0) /如果存在,则删除,否则输出: s-next=p- free(p); printf(删除成功!请继续操作! printLink(head); s
6、=p; if(p=NULL) else if(a=2) printf(请输入要删除职工的工号: /输入要删除的人的工号 scanf(%ld for(p; /在链表中从头到尾查找输入的人的工号 if(p-job_num=job_num) void ListModify(SLNode *head)/职工信息的修改 DataType x;/* if(p=NULL)职工名单无职工信息,无须修改! */请输入要修改的职工姓名: scanf(,x.name); for(; if(strcmp(x.name,p-name)=0)/查找到了该职工的信息 依次写入该职工的新信息:请输入职工信息:%s %c %l
7、d %ld %s %s %s %ld %ldname,&sex,&born_date,&address,&tele_num,&修改成功! break; if(p=NULL)此职工不存在,无法修改其信息!void Listfind(SLNode head)/职工信息的查找 int i,j; if(head.next=NULL)/链表为空名单中无职工信息,查询失败! /返回主菜单tnt * 职工信息查询操作 * nt * nt nt 0.结束管理系统tttt1.姓名进行查询tnt 2.出生年月查询tttt3.职工学历查询tnt 4.职工年龄查询tttt5.职工职务查询tnt 6.职工住址查询tttt7.职工电话查询tnt 8.职工工号查询tttt tn
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1