c语言求方差的库函数 方差c语言递推公式

用c语言定义一个函数,计算平均数,方差,标准差 。(请用指针完成)//计算平均数 , 方差,标准差 。
#include stdio.h
#include conio.h
#include stdlib.h
#include time.h
#include math.h
#define N 100
void TongJi(double a[],int n,double *aver,double *vari,double *stdDev){
//对长度为n的数组a进行统计 , 统计其平均值aver、方差vari、标准差stdDev
int i;
double *p,aver2;
*aver=0.0;
for(p=a (n-1);p=a;--p){
*aver =*p;//累加各元素
aver2 =(*p)*(*p);//累加各元素的平方
}
*aver/=n;//求平均值
aver2/=n;//求平方的平均值
*vari=aver2-(*aver)*(*aver);//计算方差
*stdDev=sqrt(*vari);//计算标准差
}
int main(){
double a[N],pj,fc,bzc;
int i;
srand(time(NULL));
for(i=0;iN;i){
a[i]=rand()/(RAND_MAX 1.0); //产生随机小数[0,1)
printf("%lg ",a[i]);
}
TongJi(a,N,pj,fc,bzc);
printf("\nPingJun=%lg, FangCha=%lg, BiaoZhunCha=%lg",pj,fc,bzc);
printf("\nFinished!\n");
getch();
return 0;
}
顺便做了一个测试:产生100个随机小数,得到其平均值大概在0.5左右,方差在0.08左右,标准差在0.28左右 。说明系统自带的随机数发生器还是比较均匀的 。
用C语言如何算平均数和方差及标准差由于没有指明数据的来源,下面就从文本文件"data.txt"中取出一些学生的身高数据,并计算平均值,方差和标准差!代码如下:
#includestdio.h
#include math.h
#define hh printf("\n===================================\n");
void main()
{
FILE *fp;
float a[520],x,avr,fc,bzc,t,sum=0.0;
int i,k=0;
fp=fopen("D:\\data.txt","r");
if(fp==NULL)
printf("文件打开失败!\n");
else
{
printf("身高数据:\n");
fscanf(fp,"%f",x);
while(x!=0)
{
a[k]=x;
printf("%.0f ",x);
sum =x;
fscanf(fp,"%f",x);
}
avr=sum/k;
sum=0;
for(i=0;ik;i)
sum =(a[i]-avr)*(a[i]-avr);
fc=sum/(k-1);
bzc=sqrt(fc);hh
printf("学生人数:%d\n",k);
printf("身高均值:%.2f\n",avr);
printf("身高方差:%.2f\n",fc);
printf("身高标准差:%.2f\n",bzc);
}
hh
fclose(fp);
}
扩展资料:
c语言的特点
1、C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言 。
2、C语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value) 。
3、不同的变量类型可以用结构体(struct)组合在一起 。
4、只有32个保留字(reserved keywords) , 使变量、函数命名有更多弹性 。
5、部份的变量类型可以转换,例如整型和字符型变量 。
6、通过指针(pointer),C语言可以容易的对存储器进行低级控制 。
7、预编译处理(preprocessor)让C语言的编译更具有弹性 。
C语言 求方差直接上代码:
#include stdio.h
#include conio.h
#include math.h
double fangcha(double x[], int n){
//求数组x(具有n个元素)的方差:S=(x^2-x)^0.5
int i;
double xaver=0.0, x2aver=0.0;
for(i=0;in;i){
xaver =x[i]; x2aver =x[i]*x[i];
}
xaver/=n; x2aver/=n; //求x的平均、x^2的平均
return sqrt(x2aver-xaver*xaver);
}
int main(){
double x[5];
int i;
printf("Input 5 datas:\n");
for(i=0;i5;i){
scanf("%lf",x[i]);
}
printf("\nFangCha S=%.4lf",fangcha(x,5));
printf("\nFinished!\n");
getch();
return 0;
}
希望能帮助到你 。
C语言求方差 数学库中有函数吗标准库里没有求方差的函数,需自行编写,或者网上找别人写好的库
C语言求方差 数学库中有函数吗 该怎么处理简写一下
预处理c语言求方差的库函数:
define NUM 20
include stdio.h math.h
int a[NUM]
计算c语言求方差的库函数:
int sum, average=0, total=0
for (int i=0;iNUM;i)
sum =a[i]
average=sum/NUM
for (int m=0;mNUM;m)
total =sqrt(average-a[m])
【c语言求方差的库函数 方差c语言递推公式】关于c语言求方差的库函数和方差c语言递推公式的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。

    推荐阅读