#include <string>
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;
struct Employee //声明职工的结构作为链表节点。
//数据域
{
string m_Code;
string m_Name;
string m_Number;
string m_Sex;
string m_Schooling;
string m_Address;
unsigned int m_Wage;
struct Employee* Next; //链表节点的指针域
};
typedef struct Employee Node; //取别名
typedef Node* Link;
//*函数声明*//
Link Create(Link Head);
void Release(Link Head);
Link Add(Link Head);
bool Search(Link Head);
Link Search_Unique(Link Head);
void Display_List(Link Head);
void Display_Node(Link pNode);
Link Modify(Link Head);
Link Del(Link Head);
//*函数实现*//
Link Create(Link Head)
{
Head=(Link)new Node; //创建一个带头节点的空链表。
if(!Head)
{
cout<<"分配内存失败!"<<endl;
return NULL;
}
Head->m_Code="";
Head->m_Name="";
Head->m_Number="";
Head->m_Sex="";
Head->m_Schooling="";
Head->m_Address="";
Head->m_Wage=0;
Head->Next=NULL;
return Head;
}
void Release(Link Head)
{ //释放链表。
Link ptr; //操作用的指针。
while(Head!=NULL)
{
ptr=Head;
Head=Head->Next;
delete ptr; //释放节点资源。
}
}
Link Add(Link Head)
{ //前插法添加数据。
Link pNew; // 新节点。
char again;
string code,name,sex,schooling,address;
string number;
unsigned int wage;
do
{
pNew=(Link)new Node;
//数据域。
cout<<"请输入职工号:";
cin>>code;
cout<<endl<<"请输入职工姓名:";
cin>>name;