员工管理系统数据结构课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
/*Linklist.h*/
#include"stdio.h"
#include"stdlib.h"
#include "string.h"
#define TRUE 1
#define FALSE 0
#define OK 1
#define ERROR 0
#define OVERFLOW -2
typedef struct LNode
{
char id[20];
char name[10];
char sex[10];
char birth[10];
char edu[10];
char duty[10];
char phone[20];
char address[30];
struct LNode *next;
}LNode,*Linklist;//定义节点类型
int CreatList(Linklist &L)
{
Linklist p;
p=(Linklist)malloc(sizeof(LNode));
if(!p)
{
return (0);
}
else
{
printf("请输入员工编号\n");
scanf("%s",p->id);
printf("请输入员工姓名\n");
scanf("%s",p->name);
printf("请输入员工性别\n");
scanf("%s",p->sex);
printf("请输入员工生日\n");
scanf("%s",p->birth);
printf("请输入员工学历\n");
scanf("%s",p->edu);
printf("请输入员工职务\n");
scanf("%s",p->duty);
printf("请输入员工电话\n");
scanf("%s",p->phone);
printf("请输入员工地址\n");
scanf("%s",p->address);
}
p->next=L->next;
L->next=p;
}//头插法生成单链表
int Initlist(Linklist &L)
{
L=(Linklist)malloc(sizeof(LNode));
if(!L)
return (0);
L->next=NULL;
return OK;
}//初始化单链表
void Display(Linklist &L)
{
Linklist p;
for(p=L->next;p;p=p->next)
{
printf("编号%s\n",p->id);
printf("姓名%s\n",p->name);
printf("性别%s\n",p->sex);
printf("生日%s\n",p->birth);
printf("学历%s\n",p->edu);
printf("职务%s\n",p->duty);
printf("电话%s\n",p->phone);
printf("地址%s\n",p->address);
printf("============================\n");
}
}//显示所有员工信息
int SearchID(Linklist &L,char id[20])
{
LNode *p;
p=L;
while(p)
{
if(strcmp(p->id,id)==0)
{
printf("编号%s\n",p->id);
printf("姓名%s\n",p->name);
printf("性别%s\n",p->sex);
printf("生日%s\n",p->birth);
printf("学历%s\n",p->edu);
printf("职务%s\n",p->duty);
printf("电话%s\n",p->phone);
printf("地址%s\n",p->address);
}
p=p->next;
}
return OK;
}//ID查询
int SearchName(Linklist &L,char name[10]) {
LNode *p;
p=L;
while(p)
{
if(strcmp(p->name,name)==0)
{
printf("编号%s\n",p->id);
printf("姓名%s\n",p->name);
printf("性别%s\n",p->sex);
printf("生日%s\n",p->birth);
printf("学历%s\n",p->edu);
printf("职务%s\n",p->duty);
printf("电话%s\n",p->phone);
printf("地址%s\n",p->address);
}
p=p->next;
}
return OK;
}//姓名查询
void SortID(Linklist &L ,char id[20])
{