问答题
给定程序MODI1.C中函数 fun 的功能是:由形参给定n个实数,输出平均值,并统计在平均值以上(含平均值)的实数个数。
例如,n=8时,输入:193.199,195.673,195.757,196.051,196.092,196.596,196.579,196.763所得平均值为:195.838745,在平均值以上的实数个数应为:5
请改正程序中的错误,使程序能输出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
int fun(float x[], int n)
{
/************found************/
int j, c=0, float xa=0.0;
for (j=0; j
xa += x[j]/n;
printf("ave =%f/n",xa);
for (j=0; j
/************found************/
if (x[j] => xa)
c++;
return c;
}
main ( )
{ float x[100] = {193.199, 195.673, 195.757, 196.051, 196.092, 196.596, 196.579,
196.763};
printf("%d/n", fun (x, 8));
}
【正确答案】第一处:两种类型变量定义之间应该用分号,所以应改为:int j, c=0; float xa=0.;。
第二处:在C语言中,大于等于应表达为>=。
【答案解析】