c语言编写函数:double variance(double data[], int n); 计算数组中n个元素的方差,并用主函数测试之。
时间: 2024-01-22 12:21:34 浏览: 143
以下是C语言编写的函数 `variance`,用于计算给定数组中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.0, 2.0, 3.0, 4.0, 5.0};
int n = sizeof(data) / sizeof(data[0]);
double var = variance(data, n);
printf("方差为 %.2f\n", var);
return 0;
}
```
在主函数中,我们声明了一个长度为5的数组 `data`,然后将其作为参数传递给 `variance` 函数,并将其返回值打印到控制台。
相关问题
用C语言编写函数:double variance(double data[], int n); 计算数组中n个元素的方差,并用主函数测试之
下面是用C语言编写的计算数组方差的函数和主函数:
```c
#include <stdio.h>
double variance(double data[], int n) {
double mean = 0.0, sum = 0.0, var = 0.0;
int i;
for (i = 0; i < n; i++) {
mean += data[i];
}
mean /= n;
for (i = 0; i < n; i++) {
sum += (data[i] - mean) * (data[i] - mean);
}
var = sum / n;
return var;
}
int main() {
double data[] = {1.0, 2.0, 3.0, 4.0, 5.0};
int n = sizeof(data) / sizeof(double);
printf("data: ");
for (int i = 0; i < n; i++) {
printf("%g ", data[i]);
}
printf("\nvariance: %g\n", variance(data, n));
return 0;
}
```
运行结果:
```
data: 1 2 3 4 5
variance: 2.5
```
用C语言编写函数:double variance(double data[], int n); 计算数组中n个元素的方差,并用主函数测试之。
以下是用C语言编写的函数和主函数:
```c
#include <stdio.h>
double variance(double data[], int n);
int main() {
double data[] = {2.5, 3.7, 1.2, 4.8, 2.9};
int n = 5;
double var = variance(data, n);
printf("The variance of the data is: %.2lf", var);
return 0;
}
double variance(double data[], int n) {
double mean = 0, sum = 0, var = 0;
int i;
for (i = 0; i < n; i++) {
mean += data[i];
}
mean /= n;
for (i = 0; i < n; i++) {
sum += (data[i] - mean) * (data[i] - mean);
}
var = sum / n;
return var;
}
```
输出结果为:
```
The variance of the data is: 1.41
```
说明函数能够正确计算数组中n个元素的方差。
阅读全文