当前位置: 首页 > news >正文

有一个做炫舞官网活动的网站石嘴山网站seo

有一个做炫舞官网活动的网站,石嘴山网站seo,鞋图相册网站怎么做,上海市门户网站一: 在本文中,我们将探讨如何在C中使用vector和multimap容器来管理一个简单的员工数据系统。我们将创建一个员工类,随机生成员工数据,将员工分组,并展示各组员工的详细信息。此示例展示了C标准模板库(STL&…

一:

在本文中,我们将探讨如何在C++中使用vectormultimap容器来管理一个简单的员工数据系统。我们将创建一个员工类,随机生成员工数据,将员工分组,并展示各组员工的详细信息。此示例展示了C++标准模板库(STL)的强大功能和灵活性。

1. 定义员工类

我们首先定义一个worker类,包含员工的名字(name)和薪水(salary)。这是一个简单的公有类,成员变量可以直接访问。

class worker {
public:string name;int salary;
};
2. 生成员工数据

使用vector容器来存储worker对象。vector是一种动态数组,提供快速的随机访问和尾部插入删除操作。

createworker函数用于生成10名员工的数据。每名员工的名字是“NAME”后跟一个字母,薪水是随机生成的,范围在10000到19999之间。

void createworker(vector<worker>& v) {string nameseed = "BCDEFGHIJ";for (int i = 0; i < 10; i++) {worker worker1;worker1.name = "NAME";worker1.name += nameseed[i];worker1.salary = rand() % 10000 + 10000;v.push_back(worker1);}
}
3. 分组存储

multimap容器用于按组存储员工数据。multimap是允许键重复的排序关联容器,非常适合管理具有自然分组但又需要排序的数据。

我们将员工随机分为三组(ART, SCIENCE, MATH)。setgroup函数将vector中的每个员工根据随机生成的组号插入到multimap中。

void setgroup(vector<worker>& v, multimap<int, worker>& m) {for (vector<worker>::iterator it = v.begin(); it != v.end(); it++) {int group = rand() % 3 + 1;  // 1-3的组号m.insert(make_pair(group, *it));}
}
4. 显示分组数据

最后,我们通过showworker函数来展示各组的员工数据。对于每一组,我们首先查找该组的第一个员工,然后遍历该组所有员工,打印他们的名字和薪水。

void showworker(multimap<int, worker>& m) {cout << "ART:" << endl;displayGroup(m, ART);cout << "SCIENCE:" << endl;displayGroup(m, SCIENCE);cout << "MATH:" << endl;displayGroup(m, MATH);
}void displayGroup(multimap<int, worker>& m, int groupID) {auto pos = m.find(groupID);int num = m.count(groupID);for (int index = 0; pos != m.end() && index < num; index++, pos++) {cout << "NAME:  " << pos->second.name << " salary:   " << pos->second.salary << endl;}cout << "--------------------------------------------" << endl;
}
5. 主函数

main函数中,我们初始化随机数生成器,创建员工vector,设置员工分组,并展示所有组的员工信息。

int main() {srand((unsigned int)time(NULL));vector<worker>v;createworker(v);multimap<int, worker>m;setgroup(v, m);showworker(m);return 0;
}

结论

这个示例展示了如何使用C++ STL的vectormultimap容器来管理和展示复杂数据。通过这种方式,我们可以有效地组织数据,并利用容器自带的功能来简化代码和提高效。

二、完整代码

#define ART 1
#define SCIENCE 2
#define MATH 3
class worker
{
public:string name;int salary;
};
void createworker(vector<worker>& v)
{string nameseed = "BCDEFGHIJ";for (int i = 0; i < 10; i++){worker worker1;worker1.name = "NAME";worker1.name += nameseed[i];worker1.salary = rand() % 10000 + 10000;v.push_back(worker1);}
}
void setgroup(vector<worker>& v, multimap<int, worker>& m)
{for (vector<worker>::iterator it = v.begin(); it != v.end(); it++){int group = rand() % 3+1;m.insert(make_pair(group, *it));}
}
void showworker(multimap<int, worker>& m)
{cout << "ART:" << endl;multimap<int, worker>::iterator pos = m.find(ART);int num = m.count(ART);int index = 0;for (; pos != m.end() && index != num; index++, pos++){cout << "NAME:  " << pos->second.name << "salary:   " << pos->second.salary << endl;}cout << "-------------------------------------------- - " << endl;cout << "SCIENCE:" << endl;multimap<int, worker>::iterator pos1 = m.find(SCIENCE);int num1 = m.count(SCIENCE);int index1 = 0;for (; pos1 != m.end() && index1 != num1; index1++, pos1++){cout << "NAME:  " << pos1->second.name << "salary:   " << pos1->second.salary << endl;}cout << "-------------------------------------------- - " << endl; cout << "MATH:" << endl;multimap<int, worker>::iterator pos2 = m.find(MATH);int num2 = m.count(MATH);int index2 = 0;for (; pos2 != m.end() && index2 != num2; index2++, pos2++){cout << "NAME:  " << pos2->second.name << "salary:   " << pos2->second.salary << endl;}
}
int main()
{srand((unsigned int)time(NULL));vector<worker>v;createworker(v);multimap<int, worker>m;setgroup(v,m);showworker(m);return 0;
}

http://www.tj-hxxt.cn/news/124402.html

相关文章:

  • 天津网站建设制作快排seo
  • 青羊区建设局网站网络营销推广实训报告
  • 旅游网站做模板素材营销网络营销
  • 动易做网站嘉兴seo计费管理
  • wordpress css合并seo排名优化
  • 松江做网站公司广州网站优化平台
  • 重庆石桥铺网站建设公司app推广代理去哪里找
  • 小型的游戏网站怎么做广西网站建设制作
  • 网页与网站的区别是什么seo整站怎么优化
  • 做网站前台开发学习推广免费
  • 小目标网站建设三生网络营销靠谱吗
  • 电脑上做免费网站教程网站建设公司排行榜
  • 设计师培训有哪些课程seo做的比较好的公司
  • 如何进入网页编辑整站优化关键词排名
  • 怎样建设的网站好优化好排名朝阳区seo搜索引擎优化怎么样
  • 游戏开发需要学什么大学专业百度seo原理
  • 做网站时背景图片浮动刷关键词怎么刷
  • 网站群建设指导意见大型网站建设方案
  • 做盗链电影网站怎么样厦门谷歌seo公司有哪些
  • 做网站里面内容编写2023最火的十大新闻
  • 注册公司在哪个网站系统谷歌下载
  • 做网站的例子推广计划书怎么写
  • 三明市建设局网站百度2022年版本下载
  • 药监局网站建设方案怎么做网站教程
  • 旅游网站开发的结论seo网络营销推广公司
  • 企业网站seo价格武汉大学人民医院精神科
  • 公司网站建设推广方案网站推广seo是什么
  • 宁晋做网站上海网络排名优化
  • 威客做的比较好的网站广告推广赚钱在哪接
  • 专做中医教学网站一个平台怎么推广