员工分类案例

员工分类案例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
#include
#include
#include
#include
#include
#include
using namespace std;
/*
有十个员工,将这些员工随机分配到每个岗位,然后输出每个岗位的人员信息
将10个人放在vector中,然后遍历vector将人随机分配到multimap的容器中
分部门显示员工信息



*/
class Worker{
public:
string name;
int Salary;
// Worker(string name,int Salary){
// this->name=name;
// this->Salary=Salary;
// }
};


void createWorker(vector &worker){
string name_seed = "ABCDEFGHIJ";
for(int i=0;i<10;i++){
Worker w;
w.name="员工";
w.name+=name_seed[i];
w.Salary= rand()%10000+10000; // 坑 , 一句还执行不了 worker.push_back(Worker("员工"+name_seed[i],rand()%10000+10000));
worker.push_back(w); // 10000-19999
}

// for(vector::iterator it=worker.begin();it!=Worker.end();it++){
// itWorker()
// }
}
void printVector(vector &worker){
for(vector::iterator it=worker.begin();it!=worker.end();it++){
cout<<"姓名:"<< it->name<<" "<<"工资:"<Salary<<endl;
}
}
void setGroup(vector &worker,multimap<int,Worker> &mworker){
for(vector::iterator it=worker.begin();it!=worker.end();it++){
int dept = rand()%3; // 0 1 2
mworker.insert(make_pair(dept,*it));
}
}
void printMworker(multimap<int,Worker>&worker){ // 0 A B C 1 F G 2 D E
cout<<"美术--------------"<<endl;
for(multimap<int,Worker>::iterator it=worker.begin();it!=worker.end();it++){
if((*it).first==0){
cout<<"姓名:"<< it->second.name<<" "<<"工资:"<< it->second.Salary<<endl;

}
}
cout<<"设计--------------"<<endl;
for(multimap<int,Worker>::iterator it=worker.begin();it!=worker.end();it++){
if((*it).first==1){
cout<<"姓名:"<< it->second.name<<" "<<"工资:"<< it->second.Salary<<endl;

}
}
cout<<"开发---------------"<<endl;
for(multimap<int,Worker>::iterator it=worker.begin();it!=worker.end();it++){
if((*it).first==2){
cout<<"姓名:"<< it->second.name<<" "<<"工资:"<< it->second.Salary<<endl;
}
}
}
int main(){
srand((unsigned int )time(NULL));
vector vWorker;
createWorker(vWorker);
printVector(vWorker);
// 员工分组
multimap<int,Worker> mWorker;
setGroup(vWorker,mWorker);
printMworker(mWorker);

}

/*
姓名:员工A 工资:15799
姓名:员工B 工资:19029
姓名:员工C 工资:14589
姓名:员工D 工资:11870
姓名:员工E 工资:11106
姓名:员工F 工资:16145
姓名:员工G 工资:12290
姓名:员工H 工资:15171
姓名:员工I 工资:13026
姓名:员工J 工资:19923
美术--------------
姓名:员工B 工资:19029
姓名:员工C 工资:14589
姓名:员工D 工资:11870
姓名:员工F 工资:16145
设计--------------
姓名:员工A 工资:15799
姓名:员工E 工资:11106
姓名:员工J 工资:19923
开发---------------
姓名:员工G 工资:12290
姓名:员工H 工资:15171
姓名:员工I 工资:13026
*/

本文标题:员工分类案例

文章作者:philxling

发布时间:2020年04月17日 - 23:24

最后更新:2020年10月15日 - 12:26

原始链接:http://philxling.club/2020/04/17/c++/6-%E5%91%98%E5%B7%A5%E5%88%86%E7%B1%BB%E6%A1%88%E4%BE%8B/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

philxling wechat
ex. subscribe to my blog by scanning my public wechat account
-------------本文结束感谢您的阅读-------------
谢谢你给我糖吃!!!
0%