问答题 给定程序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语言中,大于等于应表达为>=。
【答案解析】