跳到主要内容

C 编程:计算标准差

要理解这个例子,你需要了解以下 C编程 主题的知识:

这个程序使用数组计算个体系列的标准差。访问这个页面了解有关标准差的内容。

为了计算标准差,我们创建了一个名为 calculateSD() 的函数。

示例:总体标准差

// 总体的SD
#include <math.h>
#include <stdio.h>
float calculateSD(float data[]);
int main() {
int i;
float data[10];
printf("请输入10个元素:");
for (i = 0; i < 10; ++i)
scanf("%f", &data[i]);
printf("\n标准差 = %.6f", calculateSD(data));
return 0;
}

float calculateSD(float data[]) {
float sum = 0.0, mean, SD = 0.0;
int i;
for (i = 0; i < 10; ++i) {
sum += data[i];
}
mean = sum / 10;
for (i = 0; i < 10; ++i) {
SD += pow(data[i] - mean, 2);
}
return sqrt(SD / 10);
}

输出

请输入10个元素:1
2
3
4
5
6
7
8
9
10

标准差 = 2.872281

在这里,包含10个元素的数组被传递给了 calculateSD() 函数。该函数使用平均值计算标准差并返回它。

注意: 该程序计算的是总体的标准差。如果你需要找出样本的标准差,公式略有不同。