⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 employee.cpp

📁 职工管理系统:包括职工查找、排序、编辑等
💻 CPP
📖 第 1 页 / 共 2 页
字号:
			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 + -