编程论坛
注册
登录
编程论坛
→
C++教室
钱能第二版习题问题
辽东学院他爹
发布于 2008-08-11 11:37, 1173 次点击
习题为:定义一个数组,数据为:6,3,7,1,4,8,2,9,11,5.请创建一个向量,把数组的初值赋给它,
然后对该向量求标准差(均方差).
请问大家,什么叫数组的初值赋给向量啊?!
9 回复
#2
xlh5225
2008-08-11 12:30
#include<vector>
int array[]={6,3,7,1,4,8,2,9,11,5};
std::vector<int> vec(a, a+10);
#3
blueboy82006
2008-08-11 13:47
楼上正解……
#4
辽东学院他爹
2008-08-11 23:07
[bo][un]xlh5225[/un] 在 2008-8-11 12:30 的发言:[/bo]
#include
int array[]={6,3,7,1,4,8,2,9,11,5};
std::vector vec(a, a+10);
可是a
跟array有什么关系呢?
#5
xlh5225
2008-08-11 23:29
写错了嘛,a应该是array哈....
#6
辽东学院他爹
2008-08-11 23:48
[bo][un]xlh5225[/un] 在 2008-8-11 23:29 的发言:[/bo]
写错了嘛,a应该是array哈....
谢谢!
#7
辽东学院他爹
2008-08-11 23:49
[bo][un]xlh5225[/un] 在 2008-8-11 23:29 的发言:[/bo]
写错了嘛,a应该是array哈....
我的答案:
#include<iostream>
#include<vector>
#include<math.h>
using namespace std;
void main()
{
int a[]={6,3,7,1,4,8,2,9,11,5};
vector<int> b(a,a+10);
for(int i=0;i<=10;++i)
b.push_back(a[i]);
int sum=0;
for(int j=0;j<10;++j)
sum=sum+b[j];
//cout<<sum<<endl;
double xba;
xba=sum/10;
//就是在这个地方怎样不是整除?这样会精确些.
//cout<<xba<<endl;
double sum1=0;
for(int k=0;k<10;++k)
sum1=sum1+(b[k]-xba)*(b[k]-xba);
//cout<<sum1<<endl;
double xba1;
xba1=sum1/10;
double xb2;
xb2=sqrt(xba1);
cout<<xb2<<endl;
}
#8
xlh5225
2008-08-12 00:06
你这样写试试:xba=sum/10.0
#9
辽东学院他爹
2008-08-15 20:10
这样写会自动关机!
#10
benhuang
2008-08-15 22:53
.....
1