改错题   给定程序中函数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 <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语言的宏定义,其格式为:#define标识符字符串,中间要用空格分开。在该题中,标识符为FU(m, n),字符串为(m/n),由题干信息可知,m、n均为表达式,且先进行表达式运算,再进行除法运算,因此此处应为(m)/(n)。