C语言课程设计——职工管理程序(链表实现) 下载本文

/********************************头文件调用*********************************************/

#include \#include \#include \#include \

/********************************结构体声明*********************************************/

/********************************职工信息结构体*****************************************/

struct Employee; //职工信息结构体声明

typedef struct Employee *PtrToNode; //结构体指针定义 typedef PtrToNode List; //链表头指针定义 typedef PtrToNode Position; //链表结点指针定义

/********************************职称结构体*****************************************/

struct Title; //职称结构体声明

typedef struct Title *PtrToTitle; //结构体指针定义

/********************************函数声明

************************************************/

/********************************链表函数声明********************************************/

List MakeEmpty(List L); //空链表创建函数 int IsEmpty(List L); //判断空链表函数 int IsLast(Position P,List L); //判断链尾函数 void DeleteList(List L); //链表删除函数

Position FindNumPrevious(int number,List L); //职工号前驱指针查找函数 Position FindNamePrevious(char name[],List L); //职工姓名前驱指针查找函数 List Sort(List L); //链表冒泡排序函数

PtrToTitle MakeEmptyTitle(PtrToTitle L1); //空职称链表创建函数 PtrToTitle InsertTitle(char t[20],PtrToTitle L1); //职称插入函数

/********************************文件函数声明********************************************/

List Init(List L); //初始化函数 void Save(List L); //信息保存函数

void MakeFileEmpty(); //清空文件函数

/********************************菜单函数声明********************************************/

void MainMeun(); //主菜单 void ViewMeun(); //显示菜单

void EmployeeMeun(); //职工信息显示菜单 void ModMeun(); //修改菜单

void ModMeun1(); //修改的部分菜单 void ModMeun(); //删除菜单

/********************************职工管理函数声明********************************************/

void Add(List L); //信息录入函数

void View(List L); //信息显示函数 void ViewNum(List L); //职工号显示函数 void ViewName(List L); //职工号显示函数 void ViewEmployee(List L); //职工信息显示函数 void ViewDepartment(List L); //部门信息显示函数 void ViewTime(List L); //入厂时间显示函数

void Mod(List L); //信息修改函数 void Mod1(Position P,List L); //修改的部分函数 void ModNum(Position P,List L); //职工号修改函数 void ModName(Position P,List L); //职工姓名修改函数 void ModDepartment(Position P,List L); //工作部门修改函数 void ModTitle(Position P,List L); //职工职称修改函数 void ModTime(Position P,List L); //入厂时间修改函数 void Modmoney(Position P,List L); //职工工资修改函数

void Delete(List L); //职工号删除函数 void DeleteNum(List L); //职工号删除函数 void DeleteName(List L); //职工姓名删除函数

void PrintEmployee(Position P); //职工信息打印函数

void TurnBack(); //返回上一菜单函数 char Test1(char a,char b,char c); //菜单输入检测函数

/*********************************结构体定义

***********************************************/

//职工信息结构体

struct Employee {

int num; //职工号 char name[20]; //姓名 char department[20]; //工作部门 char Title[20]; //职称

char time[10]; //入厂时间 年/月/日 2018/6/29 int money; //工资

Position Next; //Next指针 (指向下一结构体) };

//职称结构体 struct Title {

char title[20]; //职称名称

int num; //部门职称人数 struct Title* Next; //Next指针 };

/*********************************函数定义

**************************************************/

/*********************************主函数

**************************************************/

int main() {

List L=NULL; char a; L=Init(L);

printf(\输入回车键继续\ getchar(); while(1) {

system(\实现清屏

MainMeun(); //调用 主菜单显示函数 fflush(stdin); //清除键盘缓冲区 a=Test1(getchar(),'1','7'); //菜单输入检测函数 switch(a) {

case '1': system(\//调用 信息录入函数

case '2': system(\//调用 信息显示函数