【正确答案】void Compute(void)
int i,yy[MAX];
for (i=0;i<1000;i++) /*循环以遍历数组xx的所有1000个数*/
if (xx[i]%2) /*如果当前数为奇数*/
{
odd++; /*让计数值odd增1*/
ave1 +=xx[i]; /*将此数累加至ave1中*/
yy[odd-1]=xx[i]; /*将此数保存到数组yy中*/
}
else
{ /*否则让计数值even增1并将此数累加至ave2中*/
even++;
ave2 +=xx[i];
}
ave1 /=odd; /*计算奇数的平均值*/
ave2 /=even; /*计算欧数的平均值*/
for (i=0;i<odd;i++) /*循环以求所有奇数的方差*/
totfc +=(yy[i]-avel)*(yy[i]-ave1)/odd;
}
【答案解析】