#include "consts.h"
typedef struct node
{
char num[110];
char name[10];
char xueli[10];
char hunyin[10];
char zhicheng[10];
struct node *next;
}LinkList;
void CreatLinkList(LinkList *head,int *n) /* 建立链表 */
{
char num[110];
char XM[10],XL[10],HY[10],ZC[10];
int i=1;
LinkList *p=head;
LinkList *s;
printf("请输入员工的员工号,输入0结束输入:\n");
scanf("%s",&num);
while(1)
{
if(strcmp(num,"0")==0)
break;
s=(LinkList *)malloc(sizeof(LinkList));
strcpy(s->num,num);
printf("请输入员工的姓名:\n");
scanf("%s",&XM);
strcpy(s->name,XM);
printf("请输入员工的学历(小学/初中/高中/大学/本科/专科/研究生):\n");
scanf("%s",&XL);
strcpy(s->xueli,XL);
printf("请输入员工是否结婚(是/否):\n");
scanf("%s",&HY);
strcpy(s->hunyin,HY);
printf("请输入员工的职称(实习生/正式员工/经理/总经理):\n");
scanf("%s",&ZC);
strcpy(s->zhicheng,ZC);
p->next=s;
p=s;
s->next=NULL;
*n=*n+1;
printf("请输入员工的员工号,输入0结束输入:\n");
scanf("%s",&num);
}
}
void InsertStu(LinkList *head,char num[],int *n) /* 插入员工 */
{
LinkList *p;
LinkList *s;
char XM[10],XL[10],HY[10],ZC[10];
int flag=0;
printf("请输入员工的姓名:\n");
scanf("%s",&XM);
printf("请输入员工的学历(小学/初中/高中/大学/本科/专科/研究生):\n");
scanf("%s",&XL);
printf("请输入员工是否结婚(是/否):\n");
scanf("%s",&HY);
printf("请输入员工的职称(实习生/正式员工/经理/总经理):\n");
scanf("%s",&ZC);
p=head;
while(p->next!=NULL)
{
if(strcmp(p->next->num,num)==0)
{
flag=1;
break;
}
p=p->next;
}
if(flag==1)
{
strcpy(p->next->name,XM);
strcpy(p->next->xueli,XL);
strcpy(p->next->hunyin,HY);
strcpy(p->next->zhicheng,ZC);
}
else
{
s=(LinkList*)malloc(sizeof(LinkList));
strcpy(s->num,num);
strcpy(s->name,XM);
strcpy(s->xueli,XL);
strcpy(s->hunyin,HY);
strcpy(s->zhicheng,ZC);
p->next=s;
p=s;
s->next=NULL;
*n=*n+1;
printf("插入成功!\n");
}
}
int DeleStu(LinkList *head , char num[],int *n) /* 删除员工 */
{
LinkList *p=head;
LinkList *s;
if(p->next==NULL)
{
printf("员工表中没有任何的员工记录\n");
return ERROR;
}
else
{
while(p!=NULL)
{
s=p->next;
if(s!=NULL)
{
if(strcmp(s->num,num)==0)
{
p->next=s->next;
*n=*n-1;
printf("删除成功!\n");
break;
}
}
p=p->next;
}
return ERROR;
}
}
int chaxun(LinkList *head , char num[]) /* 查询员工个人信息 */
{
LinkList *h=head;
char a[101];
int flag=0;
printf("请输入要查询员工的员工号:\n");
scanf("%s",&a);
while(h !=NULL)
{
if(strcmp(h->num,a)==0)
{
flag=1;
printf("*****************************************\n");
printf("员工号 姓名 学历 婚姻 职称\n");
printf("%s\t%s\t%s\t%s\t%s\n",h->num,h->name,h->xueli,h->hunyin,h->zhicheng);
printf("*****************************************\n");
}
h = h->next;
}
if(flag==0)
printf("没有该员工信息!\n");
}
int xiugai(LinkList *head , char num[]) /* 修改员工个人信息 */
{
LinkList *h=head;
char a[101];
int flag=0;
printf("请输入要修改员工的员工号:\n");
scanf("%s",&a);
while(h !=NULL)
{
if(strcmp(h->num,a)==0)
{
char XM[10],XL[10],HY[10],ZC[10];
flag=1;
printf("请输入新的员工的姓名:\n");
scanf("%s",&XM);
printf("请输入新的员工的学历(小学/初中/高中/大学/本科/专科/研究生):\n");
scanf("%s",&XL);
printf("请输入新的员工是否结婚(是/否):\n");
scanf("%s",&HY);
printf("请输入新的员工的职称(实习生/正式员工/经理/总经理):\n");
scanf("%s",&ZC);
strcpy(h->name,XM);
strcpy(h->xueli,XL);
strcpy(h->hunyin,HY);
strcpy(h->zhicheng,ZC);
printf("修改成功!\n");
}
h = h->next;
}
if(flag==0)
printf("没有该员工信息!\n");
}
int tongji(LinkList *head , char num[]) /* 统计员工个人信息 */
{
LinkList *h=head;
char XM[10],XL[10],HY[10],ZC[10];
int b=0;
int flag=0;
printf("可以统计的项目(1.婚姻状况/2.学历/3.工作岗位):\n");
printf("请输入1-3:\n");
scanf("%d",&b);
if(b==1)
{
printf("请输入要查询的是否结婚(是/否):\n");
scanf("%s",&HY);
printf("*****************************************\n");
printf("员工号 姓名 学历 婚姻 职称\n");
while(h !=NULL)
{
if(strcmp(h->hunyin,HY)==0)
{
flag=1;
printf("%s\t%s\t%s\t%s\t%s\n",h->num,h->name,h->xueli,h->hunyin,h->zhicheng);
}
h = h->next;
}
printf("*****************************************\n");
if(flag==0)
printf("没有该项员工信息!\n");
}
else if(b==2)
{
printf("请输入要查询的是什么学历的员工(小学/初中/高中/大学/本科/专科/研究生):\n");
scanf("%s",&XL);
printf("*****************************************\n");
printf("员工号 姓名 学历 婚姻 职称\n");
while(h !=NULL)
{
if(strcmp(h->xueli,XL)==0)
{
flag=1;
printf("%s\t%s\t%s\t%s\t%s\n",h->num,h->name,h->xueli,h->hunyin,h->zhicheng);
}
h = h->next;
}
printf("*****************************************\n");
if(flag==0)
printf("没有该项员工信息!\n");
}
else if(b==3)
{
printf("请输入要查询的是职位的员工(实习生/正式员工/经理/总经理):\n");
scanf("%s",&ZC);
printf("*****************************************\n");
printf("员工号 姓名 学历 婚姻 职称\n");
while(h !=NULL)
{
if(strcmp(h->zhicheng,ZC)==0)
{
flag=1;
printf("%s\t%s\t%s\t%s\t%s\n",h->num,h->name,h->xueli,h->hunyin,h->zhicheng);
}
h = h->next;
}
printf("*****************************************\n");
if(flag==0)
printf("没有该项员工信息!\n");
}
}
void DisplayStu(LinkList * head) /* 浏览员工链表 */
{
LinkList *h=head->next;
printf("*****************************************\n");
printf("员工号 姓名 学历 婚姻 职称\n");
while(h!=NULL)
{
printf("%s\t%s\t%s\t%s\t%s\n",h->num,h->name,h->xueli,h->hunyin,h->zhicheng);
h=h->next;
}
printf("*****************************************\n");
}
//main程序
int main(int argc,char* argv[])
{
LinkList *head;
char num[110];
int flag=0;
int n=0;
int i=0;
int m=0;
head=(LinkList *)malloc(sizeof(LinkList));
head->next=NULL;
while(m==0){
printf("\t\t\t*****员工信息表*****\n");
printf("\t\t\t****1,创建员工表****\n");
printf("\t\t\t***2,添加员工信息***\n");
printf("\t\t\t***3,转出员工信息***\n");
printf("\t\t\t***4,查询员工信息***\n");
printf("\t\t\t***5,修改员工信息***\n");
printf("\t\t\t***6,统计员工信息***\n");
printf("\t\t\t*7,显示全部在职员工*\n");
printf("请输入要执行操作的数字1-7:\n");
scanf("%d",&i);
switch(i){
case 1:{
CreatLinkList(head,&n);
printf("员工总数为 %d\n",n);
if(head->next!=NULL)
printf("\n");
};break;
case 2:{
printf("请输入要插入的员工的员工号,以0结束\n");
scanf("%s",&num);
while(1)
{
if(strcmp(num,"0")==0) break;
InsertStu(head,num,&n);
printf("员工总数为 %d,以0结束\n",n);
scanf("%s",&num);
}
};break;
case 3:{
printf("请输入要删除的员工的员工号,以0结束\n");
scanf("%s",&num);
while(1)
{
if(strcmp(num,"0")==0) break;
flag=DeleStu(head,num,&n);
printf("员工总数为 %d,以0结束\n",n);
scanf("%s",&num);
}
};break;
case 4:{
chaxun(head,num);}; break;
case 5:{
xiugai(head,num);}; break;
case 6:{
tongji(head,num);}; break;
case 7:{
printf("员工总数为 %d\n",n);
DisplayStu(head);
};break;
default:{
printf(
西门有子名门庆
- 粉丝: 1
- 资源: 1
最新资源
- 基于ThinkPHP的投资分析、真实模拟平台详细文档+全部资料+高分项目.zip
- 基于Vue2.x的记账单记录、账单分析系统详细文档+全部资料+高分项目.zip
- 基于vnpy,支持多账户,多策略,实盘交易,数据分析,分布式在线回测,风险管理,多交易节点的量化交易系统;支持CTP期货,股票,期权,数字货币等金融产品详细文档+全部资料+高分项目.zip
- 基于百度识别API的客流分析统计系统详细文档+全部资料+高分项目.zip
- 基于成交量的股票数据分析系统详细文档+全部资料+高分项目.zip
- 基于大学生课程成绩挖掘分析的就业预测系统详细文档+全部资料+高分项目.zip
- 基于多通道卷积神经网络的汽车评论情感分析系统详细文档+全部资料+高分项目.zip
- 基于混沌系统和DNA编码的彩色数字图像加密、解密、抗噪声性能分析以及抗裁剪性能分析详细文档+全部资料+高分项目.zip
- 基于时间指数的股票价值分析系统详细文档+全部资料+高分项目.zip
- 基于计算机视觉,路面分析,及交通路况识别的车辆辅助驾驶系统详细文档+全部资料+高分项目.zip
- 基于微博的网络舆情话题分析和用户画像系统详细文档+全部资料+高分项目.zip
- 基于知识库的问答系统、其中使用带注意力机制的对抗迁移学习做中文命名实体识别,使用BERT模型做句子相似度分析。详细文档+全部资料+高分项目.zip
- 四足机器狗模型3D图纸和工程图机械结构设计图纸和其它技术资料和技术方案非常好100%好用.zip
- 毕业设计-基于智慧景区之PC端(管理端)后台管理系统全部资料+高分项目+详细文档.zip
- 基于CS架构的武汉市智慧旅游系统iTravel全部资料+高分项目+详细文档.zip
- 基于PaddlePaddle的智慧课堂实时监测系统全部资料+高分项目+详细文档.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈