问答详情
源自:6-2 数组的遍历

55. 已知double a=5.2; 则正确的赋值表达式是( )。

55. 已知double a=5.2; 则正确的赋值表达式是( )。

A. a+=a-=(a=4)*(a=3)
B. a=a*3=2
C. a%3
D. a=double(-3)

我觉得ABCD都错呀,求老师帮忙解析下,拜托了,谢谢

提问者:包小龙虾 2018-08-04 16:18

个回答

  • miku酱的哲学之路
    2018-08-05 23:20:45
    已采纳

    正确答案是A,D,D的话,让-3以double的数据类型赋值给a;

    A?哪错了啊?根据运算法则,先a=a-(a=4)*(a=3),就相当于a=5.2-4*3;然后a=5.2+(5.2-4*3),所以a输出出来就是-12;(a=4)*(a=3)这样是可以的,就把他看作4*3,就行了,平常开发中也不会这样写,主要看你概念熟不熟悉~

    C选项,你懂的,根本不是一个赋值表达式~

    B中,=的左边应该是变量,而不是表达式,你可以这样看,把"a="给省去,就"a*3=2",这里就错了。

    多注意这些概念,加油~

  • 小程序魔王
    2019-04-18 15:18:16

    正确答案是A

    B, =的左边不能是表达式

    C, 取模符号左右两边必须是整数

    D, 强制类型转换必须加括号a = (double)-3

  • 雨木目
    2019-03-28 16:51:19

    A项的a输出的是-1.6吧