C语言方差和标准差公式,C语言的一个方差问题

#include

#include

float fangcha(float *p,int u);

main()

{

float fangcha2;

int k=0;

int n;

float ve[20];

float *p=ve;

printf("说明\n");

for(n=0; n<20; n++) //当终端输入100时终止循环,统计出有多少个数

{

scanf("%f",(p+n)); //这里减1,没有意义,当n=0时 超出分配的内存,导致访问错误,主要错误就在这里

if (*(p+n)!=100) //这里改成这样,为了排出把100也计算在内

{

k++;

}

else

{

break;

}

}

fangcha2=fangcha(ve,k); //这里直接传递VE即可,无须再为p负值

printf("%f",fangcha2);

system("pause");

return 0;

}

float fangcha(float *p,int u)

{

int b;

float pingjun=0,fang=0,*pp=p;

for(b=0;b

pingjun+=*(p+b); //简化代码

p = pp; //注意书写格式,需要让人看得明白。

pingjun=pingjun/u;

for(b=0;b

fang=fang+(*(p+b)-pingjun)*(*(p+b)-pingjun);

fang=fang/u;

return fang;

}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部