-2

我有一个包含字符串和向量的地图: std::map<std::string, std::vector<int> > sorted_data; 字符串是人名,向量存储具有该名称的人的年龄。

如何访问向量以打印出它的内容并执行计算,例如数据的平均值。

任何其他关于语法和逻辑的解释都会非常有用,因为我正在努力解决这个问题。

希望你能帮忙。

安德鲁

4

1 回答 1

0

您的地图包含许多与名称相关的向量,因此要访问其中一个,您可以编写以下内容,sorted_data["john"]. 这将使您可以访问该特定向量。

例如,要计算平均值,您可以遍历向量中的所有元素并将它们相加。

int sum = 0;
for(int i = 0; i < sorted_data["john"].size(); i++)
{
  sum+=sorted_data["john"][i];
}
float avg = sum/(float)sorted_data["john"].size(); 

您还可以使用迭代器对地图进行迭代。使用 c++ 参考站点并尝试理解示例代码。

于 2013-10-13T23:16:53.060 回答