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

📄 employeer.cpp

📁 本系统面向学校管理员
💻 CPP
字号:
#include"employeer.h"
#include<vector>
#include<iostream.h>
#include<conio.h> 
#include<string.h>
#include<fstream.h>
#include<stdlib.h>
#include<iomanip.h>
#include<stdio.h>

extern std::vector<employeer> vec;

void employeer::add()//增加员工
{	
	system("CLS");		
	int a,q;  
	employeer EM;
	int N;
	do{	
		system("CLS");
		cout<<"\n\n\n\n\t\t\t\t请输入您要增加的教职工的编号(想返回按0):\n"<<"\t\t\t\t"<<'?';
					
		cin>>N;
		for(int i = 0; i<vec.size(); i++) {    //核查所要增加的资料是否原来就已经存在
			EM = (employeer)(vec[i]);
			if(EM.number==N) {
				break;
			}
		}
		if(EM.number==N) {	
			cout<<"\n\n\n\n\t\t\t\t-_-对不起,该编号已经存在"<<endl;
			cout<<"\t\t\t\t想重新增加新学生资料请按1"<<'\n'<<"\t\t\t\t想退回请按其他任意键"<<endl;
			char answer;
			cin>>answer;
			if(answer=='1') a=1;
			else return;
		}
		else {
			a = 0;
			system("CLS");	
		}
	}while(a==1);

	    EM.number = N;
		cout<<"\n\n\n\n\t\t\t\t新建编号成功\n"<<"\t\t\t\t请输入您所要增加教职工的姓名\n"
		<<"\t\t\t\t"<<'?';
		cin>>EM.name;
B:      cout<<"\n\n\n\n\t\t\t\t请选择性别:?";
        cout<<"\n\n\n\n\t\t\t\t1.男性"<<'\t'<<"2.女性"<<endl;
		cout<<"请选择:?";
		int b;
		cin>>b;
		switch(b)
		{	case 1:		strcpy(EM.sex,"男");break;
			case 2:		strcpy(EM.sex,"女");break;
			default :   cout<<"您的输入有误,请重新输入!"<<endl;goto B;
		}
redo:		cout<<"\n\n\n\n\t\t\t\t请输入年龄?";
		cin>>EM.age;
         if(EM.age<18 || EM.age>80) {
			cout<<"\t\t\t\t年龄必须在18至80岁之间,请重新输入"<<endl;
			goto redo;
		}

C:		cout<<"\n\n\n\n\t\t\t\t请选择教工职位?"<<endl;
		cout<<"\t\t\t\t1.领导"<<endl;
		cout<<"\t\t\t\t2.助教"<<endl;
		cout<<"\t\t\t\t3.教授"<<endl;
		cout<<"\t\t\t\t4.临时工"<<endl;
		cout<<"\t\t\t\t5.固定工"<<endl;
		cout<<"请选择:?";
		int c;
		cin>>c;
		system("CLS");
		switch(c)
			{	case 1:	{	strcpy(EM.state,"领导");
D:                         	cout<<"\t\t\t\t请输入学历"<<endl;
							cout<<"\t\t\t\t1。研究生"<<endl;
							cout<<"\t\t\t\tt2。博士"<<endl;		   
							cout<<"\t\t\t\t3。博士后	"<<endl;
							cout<<"请选择:?";
							int x;
							cin>>x;	
							switch(x)
								{	case 1: strcpy(EM.xueli,"研究生");
							                strcpy(EM.level,"unknow");strcpy(EM.zhicheng,"unkonw");break;
									case 2:	strcpy(EM.xueli,"博士");
										    strcpy(EM.level,"unknow"); strcpy(EM.zhicheng,"unkonw");break;
									case 3: strcpy(EM.xueli,"博士后");
											strcpy(EM.level,"unknow");strcpy(EM.zhicheng,"unkonw");break;
								default :   cout<<"\n\n\n\n\t\t\t\t输入错误!!请重新输入!"<<endl;goto D;
								}
							break;}
             	   case 2:   {		strcpy(EM.state,"助教");
E:                               cout<<"\n\n\n\n\t\t\t\t请输入学历"<<endl;
								cout<<"\t\t\t\t1。大学本科"<<endl;
									   
								cout<<"\t\t\t\t2。研究生	"<<endl;
								int y;
								cin>>y;	
								switch(y)
									{	case 1: strcpy(EM.xueli,"大学本科");
								                strcpy(EM.zhicheng,"unknow");break;
										
										case 2: strcpy(EM.xueli,"研究生");
											     strcpy(EM.zhicheng,"unknow");break;
									  default :   cout<<"/n/n/t/t/t/t/t/t/t/t/t输入错误!!请重新输入!"<<endl;goto E;
									}
F:                           	cout<<"\n\n\n\n\t\t\t\t请输入助教的工龄:"<<endl;
								cout<<"\t\t\t\t1.1年"<<endl;
								cout<<"\t\t\t\t2.2年"<<endl;
								cout<<"\t\t\t\t3.3年"<<endl;
								cin>>q;
								switch(q)
								{case 1:strcpy(EM.level,"初级");break;
									case 2:strcpy(EM.level,"中级");break;
									case 3:strcpy(EM.level,"高级");break;
									default :   cout<<"/n/n/t/t/t/t/t输入错误!!请重新输入!"<<endl;goto F;
								}
			                  break;	
						  }
			   case 3:   	   {	strcpy(EM.state,"教授");
G:                                	cout<<"\n\n\n\n\t\t\t\t请输入学历:?"<<endl;
									cout<<"\t\t\t\t1。研究生"<<endl;
									cout<<"\t\t\t\t2。博士"<<endl;		   
									cout<<"\t\t\t\t3。博士后	"<<endl;
									int z;
									cin>>z;	
									switch(z)
									{	case 1: strcpy(EM.xueli,"研究生");
									             strcpy(EM.zhicheng,"unkonw");break;
										case 2:	strcpy(EM.xueli,"博士");
											     strcpy(EM.zhicheng,"unkonw");break;
										case 3: strcpy(EM.xueli,"博士后");
											     strcpy(EM.zhicheng,"unkonw");break;
										default :   cout<<"输入错误!!请重新输入!"<<endl;goto G;
									}
H:                             		cout<<"\n\n\n\n\t\t\t\t请输入教授的级别:?"<<endl;
									cout<<"\t\t\t\t1,初级"<<endl;
									cout<<"\t\t\t\t2.中级"<<endl;
									cout<<"\t\t\t\t3.高级"<<endl;
									int t;
									cin>>t;
									switch(t)
									{case 1:strcpy(EM.level,"初级");break;
									case 2:strcpy(EM.level,"中级");break;
									case 3:strcpy(EM.level,"高级");break;
										default :   cout<<"/n/n/t/t/t/t/t输入错误!!请重新输入!"<<endl;goto H;
									}
									break;
							   }
				case 4:	   {      strcpy(EM.state,"临时工");
					              strcpy(EM.xueli,"unknow");
							      strcpy(EM.level,"unknow");
								   strcpy(EM.zhicheng,"unkonw");break;
						   }
			
						  
				case 5:    {      strcpy(EM.state,"固定工");
								  strcpy(EM.xueli,"unkonw");
								  strcpy(EM.level,"unknow");
								  strcpy(EM.zhicheng,"unkonw");break;}
							      
				default :   cout<<"输入错误!!请重新输入!"<<endl;goto C;
					cout<<"\n\n\t\t\t已经在资料库中增加了教职工工资料"<<endl;
					
		}
        	
						   
		 
		EM.salary=0;					                                     //初始化工资=0
		vec.push_back(EM);			

}

void employeer::display()                                                 //输出全部教工基本信息
{
	system("CLS");
	employeer EM; 
	cout<<"\n\n"<<setw(15)<<"编号"<<setw(10)<<"姓名"<<setw(10)
		<<"性别"<<setw(10)
		<<"年龄"<<setw(10)<<"职位"<<endl;
		for(int i = 0; i<vec.size(); i++) {    
			EM = (employeer)(vec[i]);
			cout<<setw(15)<<EM.number<<setw(10)<<EM.name<<setw(10)<<EM.sex
				<<setw(10)<<EM.age<<setw(10)<<EM.state<<endl;
		} 
 system("PAUSE");
}
void employeer::search()                                                //查询具体职工的具体信息
{employeer EM;
	
	int a=1;
	while(a==1)
	{	cout<<"\n\n\n\n\n\t\t\t请输入要查询的员工的编号:?";
	int i;
	cin>>i;
	
		for(int j = 0; j<vec.size(); j++) {    //查找该职工
			EM = (employeer)(vec[j]);
			if(EM.number==i) {
				break;
			}
		}
	   cout<<"\n\n"<<setw(5)<<"编号"<<setw(8)<<"姓名"<<setw(8)<<"性别"
		   <<setw(5)<<"年龄"
		   <<setw(10)<<"职位"<<setw(10)<<"学历"<<setw(8)<<"职称"<<setw(12)<<"技术等级"
		   <<setw(8)<<"工资"<<endl;
		if(EM.number==i) 
		{
		cout<<setw(5)<<EM.number<<setw(8)<<EM.name<<setw(8)<<EM.sex<<setw(5)
			<<EM.age<<setw(10)<<EM.state<<setw(10)<<EM.xueli<<setw(8)<<EM.zhicheng<<setw(12)
			<<EM.level<<setw(8)<<EM.salary<<endl;
	     a=0;
	}
		else  cout<<"查找不到此教职工资料此教职工!!"<<endl;}system("PAUSE");

}

void employeer::remove()                                                //删除职工的信息
{employeer EM;
	
	int a=1;
	while(a==1)
	{		cout<<"\n\n\n\n\n\t\t请输入要删除的员工的编号:(返回主菜单请输入0)?";
	int i;
	int k;
	cin>>i;
	if(i==0) {
		system("CLS");
		return;
	}
	
		for(int j = 0; j<vec.size(); j++) {    
			EM = (employeer)(vec[j]);
			if(EM.number==i) {
				k = j;
				break;
			}
		}
	   cout<<"\n\n"<<setw(5)<<"编号"<<setw(8)<<"姓名"<<setw(8)<<"性别"
		   <<setw(5)<<"年龄"
		   <<setw(10)<<"职位"<<setw(10)<<"学历"<<setw(8)<<"职称"<<setw(12)<<"技术等级"
		   <<setw(8)<<"工资"<<endl;
		if(EM.number==i) 
		{
		cout<<setw(5)<<EM.number<<setw(8)<<EM.name<<setw(8)<<EM.sex<<setw(5)
			<<EM.age<<setw(10)<<EM.state<<setw(10)<<EM.xueli<<setw(8)<<EM.zhicheng<<setw(12)
			<<EM.level<<setw(8)<<EM.salary<<endl;
	     a=0;
		std::vector<employeer> vec2;
		for(int j = 0; j<vec.size(); j++) {    
			EM = (employeer)(vec[j]);
			if(EM.number!=i) {
				vec2.push_back(EM);
			}
		}
		vec = vec2;
		cout<<"成功删除教职工!"<<endl;
	}
		else  cout<<"查找不到此教职工资料!!"<<endl;
	}system("PAUSE");

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -