若有 a=3,则执行下列语句为a的值为? a+=a*=a;

若有 a=3,则执行下列语句为a的值为? a+=a*=a;

(选择一项)A 3  B 9  C 18  D 12  

求解题思路

正在回答

登陆购买课程后可参与讨论,去登陆

14回答

赋值运算从右向左执行,故a=a*a=9,a+=9,a=a+9=3+9=12

a+=……在计算之前这个位置的a就被预存为3了,不会更新为9,最后的运算是3+9。


  • zhangcyzk 提问者 #1
    非常感谢!
    2018-04-14 15:48:26
tea8336 2018-05-16 19:46:05

a+=a*=a;

a+=(a*a);

a=a+(a*a);

a=3+(3*3);

a=12;

慕雪3495781 2018-05-08 15:03:39

赋值运算从右向左执行,故a=a*a=9,a+=9,a=a+9=3+9=12

a+=……在计算之前这个位置的a就被预存为3了,不会更新为9,最后的运算是3+9。


慕雪3495781 2018-05-07 09:06:34

一条语句执行当中,变量的值不变。结果为12

qq_年轻人_20 2018-05-03 17:13:09

把变量和赋值运算符分开来看,(+=)的左右分别看做一个整体,然后把右边的值赋值给左边,即把a*=a通过(+=)赋值给a。

狼性诱惑 2018-05-03 13:35:35
  • 你发的内容,这边看不到n~~
    2018-05-03 13:47:13
汇福陵川 2018-05-03 11:54:16

从右向左执行:a*=a:a=3*3=9;a+=9:a=3+9=12

狼性诱惑 2018-05-02 00:57:00
狼性诱惑 2018-05-02 00:56:28
马朝阳 2018-04-26 10:20:18

一条语句未执行完,a的值始终是3

Ygz_ 2018-04-24 14:21:19

赋值运算从右向左执行,故a=a*a=9,a+=9,a=a+9=3+9=12

a+=……在计算之前这个位置的a就被预存为3了,不会更新为9,最后的运算是3+9。


慕无忌5237671 2018-04-24 02:36:55

分解成: a = a + a * a;

宝慕林4175721 2018-04-12 20:12:08

若有 a=3,则执行下列语句为a的值为? a+=a*=a;  a=12


  • 从右到左,先是a=a*a,然后是a+=a
    2018-04-13 10:21:04
LCFan 2018-04-12 17:46:54

赋值语句是从左到右执行的。所以先是a=a*a =9,然后是a=a+9=12. 这是仍然a=3,因为语句没有执行完

  • 赋值运算是从右向左执行的o~~
    2018-04-12 17:55:42
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师