c语言求方差的编程问题,C语言的一个方差问题〔会追50分〕

满意答案

#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;

}

00分享举报

你可能感兴趣的:(c语言求方差的编程问题)