C语言解题 ,,,,急!!!请高人解!

来源:百度知道 编辑:UC知道 时间:2024/09/21 20:42:50
一、程序修改考试题(8分)
给定程序中函数fun的功能是:给定n个实数,统计并输出其中在平均值以上(包括等于平均值)的实数个数。
例如,n=8时,输入:193.199,195.673,195.757,196.051,196.092,196.596,
196.579,196.763
所得平均值为195.838745,在平均值以上的实数个数应为:5
请改正函数fun中的错误,使程序能输出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

#include
#include

int fun(float x[], int n)
/************found************/
int j, c=0; float xa=0.0;
for (j=0; j<n; j++ )
xa += x[j]/n;
printf("ave =%f\n",xa);
for (j=0; j>n; 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};
clrscr( );
printf("%d\n", fun (x, 8));
}

二、程序设计考试题(12分)
编写函数fun,它的功能是:根据以下公式求P的值,结果由函数值带回。m与n为两个正整数且要求m>n。

例如:m=12,n=8时,运行结果为495.000000。

int fun(float x[], int n)
/************found************/
int j, c=0; float xa=0.0;
for (j=0; j<n; j++ )
xa += x[j]/n;
printf("ave =%f\n",xa);
for (j=0; j>n; j++ ) //这句有问题,改为for (j=0; j<n; j++ )
/************found************/
if (x[j] => xa)
c++;
return c;
}

第二道题,你不是让我们想公式吧?就给两个数给个结果。。。我可没时间去想公式。。。

clrscr( ); 这是什么函数

x[j]/n,结果是整型的。应该把n强制转化为float型。

第二个for循环j>n改j<n

clrscr( ); 清空控制台的显示