c语言写均值和方差的函数
时间: 2023-03-21 15:03:57 浏览: 155
计算均值和方差的代码,方便好用噢
4星 · 用户满意度95%
好的,我可以回答这个问题。以下是一个计算一组数的均值和方差的C语言函数:
```c
#include <stdio.h>
#include <math.h>
void calc_mean_and_variance(double data[], int n, double *mean, double *variance)
{
int i;
double sum = 0, sum_sq = 0;
for (i = 0; i < n; i++) {
sum += data[i];
sum_sq += data[i] * data[i];
}
*mean = sum / n;
*variance = (sum_sq - n * (*mean) * (*mean)) / (n - 1);
}
int main()
{
double data[] = {1.2, 2.4, 0.8, 3.1, 1.6}; // example data
int n = sizeof(data) / sizeof(double);
double mean, variance;
calc_mean_and_variance(data, n, &mean, &variance);
printf("mean = %f\n", mean);
printf("variance = %f\n", variance);
return 0;
}
```
这个函数接受一个双精度浮点数数组 `data` 和数组长度 `n` 作为输入,然后计算这组数据的均值和方差,将结果存储在指针 `mean` 和 `variance` 所指向的变量中。在计算方差时,采用的是无偏估计方法,即将分母调整为 `n - 1`。
阅读全文