定义一个数组,数据为: 6, 3, 7, 1, 4, 8, 2, 9, 11, 5。请创建一个向量,把数组的初值赋给它,然后对该向量求标准差(均方差) :
#include<iostream> (720)#include<vector> #include<cmath> //使用sqrt() using namespace std; //----------------------------------- int main() { int a[]={6,3,7,1,4,8,2,9,11,5}; int n = sizeof(a)/siazeof(a[10]); vector<int> va(a, a+n); double aver=0, sum=0; for(int i=0; i<n; ++i) aver += va[i]; aver /= n; //平均值 for(int j=0; j<n; ++j) sum +=(va[j]-aver)*(va[j]-aver); cout<<sqrt(sum/n)<<"\n"; }