下列给定程序中,函数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。 请改正程序中的错误,使它能得

admin2019-04-14  64

问题 下列给定程序中,函数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。
请改正程序中的错误,使它能得出正确的结果。
注意:不得增行或删行,也不得更改程序的结构!
试题程序:
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
/* * * * * * 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);
}

选项

答案(1)#define FU(m,n)(m)/(n) (2)return(value);

解析 本题考查:C语言宏定义;函数返回值。
本题考查C语言的宏定义,其格式为:#define标识符字符串,中间要用空格分开。在该题中,标识符为Fu(m,n),字符串为(m/n),由题干信息可知,m、n均为表达式,且先进行表达式运算,再进行除法运算,因此此处应为(m)/(n)。
转载请注明原文地址:https://kaotiyun.com/show/W1Rp777K
0

最新回复(0)