有以下定义语句: double a,b; int w; long c; 若各变量已正确赋值,则下列选项中正确的表达式是( )。

admin2013-02-23  47

问题 有以下定义语句:    double  a,b;    int  w;  long  c;    若各变量已正确赋值,则下列选项中正确的表达式是(  )。

选项 A、a=a+b=b++
B、w%((int)a+b)
C、(c+w)%(int)a
D、w=a==b

答案4

解析 选项A不是合法的赋值语句,将最右边的第一个赋值表达式加括号即为a=a+(b=b++)才正确,故选项A不正确。选项 B中运算符%的对象必须是整型,而在选项B中(int)a+b为double型,故选项B不正确。a,b都为double型,应当避免使用a==b这样的关系表达式,因为通常存放在内存中的实型数据是有误差的,因此不可能精确相等,这将导致关系表达式a==b总为0。所以,4个选项中选项C符合题意。
转载请注明原文地址:https://kaotiyun.com/show/hlPp777K
0

最新回复(0)