【发布时间】:2015-04-23 00:40:03
【问题描述】:
我在 int main() 的开头声明了平均值是两倍。这段代码编译并运行良好,除了当它计算平均值时,它以 int 形式返回。这个任务的目标是创建和填充一个向量,然后计算平均值并找到中值。我被困在这部分。有什么想法吗??
谢谢,感谢任何帮助。
#include <iostream>
#include <vector>
#include <cmath>
#include <numeric>
using namespace std;
int main()
{
int n;
double average=0;
cout<<"Vector Length?: "<<endl;
cin>>n;
vector<int> data;
srand(time(NULL));
for (int i=0; i<n; i++)
{
data.push_back(rand()%10+1);
}
for (int i=0; i<data.size(); i++)
{
cout<<"Vector: "<<i<<" "<< data[i]<<endl;
}
average = accumulate(data.begin(), data.end(), 0)/data.size();
cout<<"Average: "<<average<<endl;
system ("pause");
return 0;
}
【问题讨论】:
-
stackoverflow.com/questions/6101084/… 你会接受它作为副本吗?
-
这可能会帮助我弄清楚。非常感谢!