问答题 给定程序MODI1.C中函数fun的功能是:计算函数 F(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)的值。其中x和y的值不等,z和y的值不等。 例如,当x的值为9、y的值为11、z的值为15时,函数值为 -3.50。 请改正程序中的错误,使它能得出正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 给定源程序: #include #include #include /************found************/ #define FU(m,n) (m/n) float fun(float a,float b,float c) { float value; value=FU(a+b,a-b)+FU(c+b,c-b); /************found************/ Return(Value); } main() { float x,y,z,sum; printf("Input x y z: "); scanf("%f%f%f",&x,&y,&z); printf("x=%f,y=%f,z=%f/n",x,y,z); if (x==y||y==z){printf("Data error!/n");exit(0);} sum=fun(x,y,z); printf("The result is : %5.2f/n",sum); }
【正确答案】第一处:define定义错误,所以应改为:#define FU(m,n) ((m)/(n))。 第二处:return错写成Return,变量value错写成Value。
【答案解析】