📄 employee.cpp
字号:
case 'z':
case 'Z': cout<<"学历 :"<<setw(10)<<"中专"<<endl; break;
case 'd':
case 'D': cout<<"学历 :"<<setw(10)<<"大专"<<endl; break;
case 'u':
case 'U': cout<<"学历 :"<<setw(10)<<"大学"<<endl; break;
case 'y':
case 'Y': cout<<"学历 :"<<setw(10)<<"硕士"<<endl; break;
case 'b':
case 'B': cout<<"学历 :"<<setw(10)<<"博士"<<endl; break;
}
switch(pp[i].duty) //输出职务
{
case 'w':
case 'W': cout<<"职务 :"<<setw(12)<<"普通工人"<<endl; break;
case 'e':
case 'E': cout<<"职务 :"<<setw(12)<<"技术人员"<<endl; break;
case 'm':
case 'M': cout<<"职务 :"<<setw(12)<<"办公人员"<<endl; break;
case 'c':
case 'C': cout<<"职务 :"<<setw(12)<<"厂长"<<endl; break;
}
cout<<"出生年月 : "<<setw(7)<<pp[i].year_Born<<"."<<pp[i].month_Born<<"."<<endl;//输出出生年月
cout<<"工作年月 :"<<setw(7)<<pp[i].year_W<<"."<<pp[i].month_W<<"."<<endl; //输出工作年月
cout<<"电话号码 :"<<setw(20)<<pp[i].tel<<endl;
cout<<endl;
return;
}
cout<<"没有你要找的职工信息!"<<endl;
}
//==========================================职工信息修改=======================================
void Operat::change()
{
char tem_s; //存放职工性别;
char tem_l; //存放职工学历;
char tem_d; //存放职工职务;
int tem_Y ; //存放职工出生年份;
int tem_M; //存放职工出生月份;
int tem_Y_W; //存放职工工作年份;
int tem_M_W; //存放职工工作月份;
char tem_T[20]; //存放职工电话号码;
if(employee_number==0)
{
cout<<"职工信息为空,无法修改!请先建立!"<<endl;
return;
}
char name[20]; //被修改的职工姓名
cout<<"请输入你要修改职工的姓名:"<<endl;
cin>>name;
for(int i=0;i<employee_number;i++)
if(!strcmp(pp[i].name,name))
{
cout<<"下面输入你要修改的信息"<<endl;
cout<<"请输入修改后的姓名:";
cin>>pp[i].name;
cout<<"\n请输入职工的性别\n";
cout<<"(男:M(或m) 女:F(或f)):";
cin>>tem_s;
while(tem_s!='M'&&tem_s!='F'&&tem_s!='m'&&tem_s!='f')
{
cout<<"error! 请重新输入:";
cin>>tem_s;
}
pp[employee_number].sex=tem_s; //性别赋值
cout<<"\n请输入职工的学历:\n";
cout<<"(高中:(G or g) 中专:(Z or z) 大专:(D or d) 大学:(U or u) 硕士:(S or s) 博士:(B or b):";
cin>>tem_l;
while(tem_l!='G'&&tem_l!='U'&&tem_l!='S'&&tem_l!='B'&&tem_l!='Z'&&tem_l!='D'&&tem_l!='g'&&tem_l!='u'&&tem_l!='s'&&tem_l!='b'&&tem_l!='z'&&tem_l!='d')
{
cout<<"error! 请重新输入:";
cin>>tem_l;
}
pp[employee_number].edu_level=tem_l; //学历赋值
cout<<"\n请输入职工的职务\n";
cout<<"(普通工人:(W or w), 技术人员:(E or e), 办公人员:(O or o), 厂长:(C or c)):";
cin>>tem_d;
while(tem_d!='W'&&tem_d!='E'&&tem_d!='O'&&tem_d!='C'&&tem_d!='w'&&tem_d!='e'&&tem_d!='o'&&tem_d!='c')
{
cout<<"error! 请重新输入:";
cin>>tem_d;
}
pp[employee_number].duty=tem_d; //职务赋职
cout<<"\n输入职工的出生年份(1900-2000如:1970):";
while((cin>>tem_Y)==0||tem_Y<1900||tem_Y>2000)
{
cout<<"error! 请重新输入:";
cin.clear();
char buffer[1024];
cin.getline(buffer,1024);
}
pp[employee_number].year_Born=tem_Y; //年份赋值
cout<<"\n输入职工的出生月份(1-12如:8):";
while((cin>>tem_M)==0||tem_M<1||tem_M>12)
{
cout<<"error! 请重新输入:";
cin.clear();
char buffer[1024];
cin.getline(buffer,1024);
}
pp[employee_number].month_Born=tem_M; //月份赋值
cout<<"\n输入工作年份(1950-2003如:1970):";
while((cin>>tem_Y_W)==0||tem_Y_W<1950||tem_Y_W>2003)
{
cout<<"error! 请重新输入:";
cin.clear();
char buffer[1024];
cin.getline(buffer,1024);
}
pp[employee_number].year_W=tem_Y_W; //工作年份赋值
cout<<"\n输入工作月份(1-12如:8):";
while((cin>>tem_M_W)==0||tem_M_W<1||tem_M_W>12)
{
cout<<"error! 请重新输入:";
cin.clear();
char buffer[1024];
cin.getline(buffer,1024);
}
pp[employee_number].month_W=tem_M_W; //工作月份赋值
cout<<"\n请输入职工的电话号码(如82842761):";
while(!(cin>>tem_T))
{
cout<<"error! 请重新输入:";
cin.clear();
char buffer[1024];
cin.getline(buffer,1024);
}
strcpy(pp[employee_number].tel,tem_T); //电话号码赋值
cout<<endl;
return;
}
cout<<"要修改的职工信息不存在!"<<endl;
}
//=========================================插入职工信息========================================
void Operat::insert()
{
char tem_s; //存放职工的性别
char tem_l; //存放职工的学历
char tem_d; //存放职工的职务
int tem_Y ; //存放职工的出生年份
int tem_M; //存放职工的出生月份
int tem_Y_W; //存放职工的工作年份
int tem_M_W; //存放职工的工作月份
char tem_T[20]; //存放职工的电话号码
char temp[20]; //要插入的职工名;
cout<<"如果你不想插入新的信息,输入'0'退出,输入任意键字符继续:"<<endl;
cin>>temp;
if(!strcmp(temp,"0"))
return; //当输入为'0'时,退出插入;
cout<<"请输入要插入的信息\n"; //插入要插入的职工信息;
cout<<"请输入职工的ID:";
cin>>pp[employee_number].ID;
cout<<"请输入职工的姓名:";
cin>>pp[employee_number].name; //存放职工的性别
cout<<"\n请输入第"<<employee_number+1<<"个职工的性别\n";
cout<<"(男:M(或m) 女:F(或f)):";
cin>>tem_s;
while(tem_s!='M'&&tem_s!='F'&&tem_s!='m'&&tem_s!='f')
{
cout<<"error! 请重新输入:";
cin>>tem_s;
}
pp[employee_number].sex=tem_s; //将合法的性别赋给职工;
cout<<"\n请输入第"<<employee_number+1<<"个职工的学历:\n";
cout<<"(高中:(G or g) 中专:(Z or z) 大专:(D or d) 大学:(U or u) 硕士:(S or s) 博士:(B or b):";
cin>>tem_l;
while(tem_l!='G'&&tem_l!='U'&&tem_l!='S'&&tem_l!='B'&&tem_l!='Z'&&tem_l!='D'&&tem_l!='g'&&tem_l!='u'&&tem_l!='s'&&tem_l!='b'&&tem_l!='z'&&tem_l!='d')
{
cout<<"error! 请重新输入:";
cin>>tem_l;
}
pp[employee_number].edu_level=tem_l; //将学历赋给职工;
cout<<"\n请输入第"<<employee_number+1<<"个职工的职务\n";
cout<<"(普通工人:(W or w), 技术人员:(E or e), 办公人员:(O or o), 厂长:(C or c)):";
cin>>tem_d;
while(tem_d!='W'&&tem_d!='E'&&tem_d!='O'&&tem_d!='C'&&tem_d!='w'&&tem_d!='e'&&tem_d!='o'&&tem_d!='c')
{
cout<<"error! 请重新输入:";
cin>>tem_d;
}
pp[employee_number].duty=tem_d; //将职务赋给职工;
cout<<"\n输入第"<<employee_number+1<<"个职工的出生年份(1900-2000如:1970):";
while((cin>>tem_Y)==0||tem_Y<1900||tem_Y>2000)
{
cout<<"error! 请重新输入:";
cin.clear();
char buffer[1024];
cin.getline(buffer,1024);
}
pp[employee_number].year_Born=tem_Y; //将年份赋值给职工;
cout<<"\n输入第"<<employee_number+1<<"个职工的出生月份(1-12如:8):";
while((cin>>tem_M)==0||tem_M<1||tem_M>12)
{
cout<<"error! 请重新输入:";
cin.clear();
char buffer[1024];
cin.getline(buffer,1024);
}
pp[employee_number].month_Born=tem_M; //月份赋值
cout<<"\n输入第"<<employee_number+1<<"个职工的工作年份(如:1970):";
while((cin>>tem_Y_W)==0||tem_Y_W<1950||tem_Y_W>2003)
{
cout<<"error! 请重新输入:";
cin.clear();
char buffer[1024];
cin.getline(buffer,1024);
}
pp[employee_number].year_W=tem_Y_W; //年份赋值
cout<<"\n输入第"<<employee_number+1<<"个职工的工作月份(1-12如:8):";
while((cin>>tem_M_W)==0||tem_M_W<1||tem_M_W>12)
{
cout<<"error ! 请重新输入:";
}
pp[employee_number].month_W=tem_M_W; //月份赋值
cout<<"\n请输入职工的电话号码(如82842761):";
while(!(cin>>tem_T))
{
cout<<"error! 请重新输入:";
}
strcpy(pp[employee_number].tel,tem_T); //电话号码赋值
cout<<endl;
employee_number++; //职工数加1;
}
//==================================删除职工信息===============================================
char tem_T[20];
void Operat::dele()
{
if(employee_number==0) //当职工数为0时,返回;
{
cout<<"职工信息为空,无法删除! 请先建立!"<<endl;
return;
}
int num; //要删除的职工序号;
cout<<"请输入要删除职工的序号:"<<endl;
cin>>num;
while(num<=0||num>employee_number) //输入的序号不合法时重新输入;
{
cout<<"输入的序号不合法!"<<endl;
cin.clear();
char buffer[1024];
cin.getline(buffer,1024);
cout<<"请输入你要删除职工的序号:"<<endl;
cin>>num;
}
for(int i=num;i<employee_number;i++) //将序号后的职工信息向前移动;
{
strcpy(pp[num-1].name,pp[num].name); //姓名信息前移
pp[num-1].sex=pp[num].sex; //性别信息前移
pp[num-1].edu_level=pp[num].edu_level; //学历信息前移
pp[num-1].duty=pp[num].duty; //职务信息前移
pp[num-1].year_Born=pp[num].year_Born; //出生年份前移
pp[num-1].month_Born=pp[num].month_Born; //出生月份前移
pp[num-1].year_W=pp[num].year_W; //工作年份前移
pp[num-1].month_W=pp[num].month_W; //工作月份前移
strcpy(pp[employee_number].tel,tem_T); //电话号码前移
}
employee_number--; //职工数减1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -