用C语言编写函数:double variance(double data[], int n); 求输入的数组中n个元素的方差
时间: 2023-11-22 09:55:55 浏览: 28
以下是用C语言编写的函数 double variance(double data[], int n),用于计算输入的数组中n个元素的方差:
```c
#include <stdio.h>
#include <math.h>
double variance(double data[], int n) {
double sum = 0.0, mean, variance = 0.0;
int i;
// 计算平均值
for (i = 0; i < n; i++) {
sum += data[i];
}
mean = sum / n;
// 计算方差
for (i = 0; i < n; i++) {
variance += pow(data[i] - mean, 2);
}
variance /= n;
return variance;
}
int main() {
double data[] = {1.2, 2.3, 3.4, 4.5, 5.6};
int n = 5;
printf("方差为:%lf\n", variance(data, n));
return 0;
}
```
解释:
1. 首先,用一个循环计算出数组中所有元素的总和sum。
2. 然后,用sum除以n,得出数组的平均值mean。
3. 接着,再用一个循环计算出每个元素与平均值之差的平方,并将它们加起来得到方差variance。
4. 最后,除以n,得到方差的最终值,并将其返回。
以上代码可以在任何 C 语言编译器中运行。