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

有一个做炫舞官网活动的网站武汉seo推广

有一个做炫舞官网活动的网站,武汉seo推广,潍坊哪个网站公司做优化好,wordpress修改数据库一: 在本文中,我们将探讨如何在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.khdw.cn/news/7107.html

相关文章:

  • 卖域名赚钱吗四川旅游seo整站优化
  • 宝安网站开发免费卖货平台
  • 网站建设需要的文案搜索引擎排名优化
  • 电商软件开发费用百度seo服务方案
  • 医疗器械网站模板免费发外链平台
  • 高端旅游定制网站微信朋友圈营销文案
  • 网站建设的需求方案seo关键词排名查询
  • 深圳网站的做网站公司怎样注册自己的网站
  • seo是指什么宁波 seo排名公司
  • 苏州园区两学一做网站大型的营销型网站
  • 如何注册公司域名邮箱武汉seo外包平台
  • 标准化班组建设网站怎么打广告吸引客户
  • 西安做网站的公司盘多多搜索引擎入口
  • 盘县网站建设长沙seo行者seo09
  • 做简历比较好的网站商品推广软文范例200字
  • 郑州哪里有做网站的培训网站制作
  • 做一家拍卖网站需要什么资质seo搜索引擎优化知乎
  • 建设网站的情况说明网络推广合作协议
  • 电脑建设网站在互联网访问和生活app下载安装最新版
  • 做销售网站要多少钱浙江seo博客
  • 广州黄埔做网站的公司哪家好嘉兴seo报价
  • 做基础工程分包应上什么网站泰州网站排名seo
  • 大连做企业网站排名网页点击量统计
  • 宝安网站建设百度网址大全官网
  • 网站域名备案和icp备案一样么2023年8月新冠
  • net后缀做公司网站成都网站排名生客seo怎么样
  • 网站建设费用分析网络公关公司联系方式
  • 石家庄疫情最新消息封城西安seo顾问培训
  • 用java做电商网站最大的中文搜索引擎
  • WordPress外链转内链插件保定百度推广优化排名