这个编程题怎么做???

来源:百度知道 编辑:UC知道 时间:2024/05/25 10:17:52
设原值a=12
1.a+=a-=a*=a

2.a/=a+a

其实你运行下就知道了..

明显是考先后级...

按小学语文理解..是先乘除后加减

1.
- a *= a => 144
- a += a => 24
- a -= a => 24 - 144 -> -120

2. 这个是一个表达式...你打空格就好理解了
=> a /= a + a
=> a /= 24
=> 12 / 24 -> 0.5

问什么???
是表达式的值吗
1.先计算a*=a即a=a*a=12*12=144这时a=144
再计算a-=a即a=a-a=144-144=0
最后a+=a a=a+a=0+0=0
所以表达式值为0
2.a=a/(a+a)注意这里以为系统运行时值从右到左的,所以它是先运行a+a在运行a/=...的所以是a=a/(a+a)
值也是0

这题目考试用的,实际没什么意义。建议多动手写写。

展开后考虑结合性 -*/都是左结合然后考虑优先级*/优先极高不展开则复合复值操作符是右结合

1.a+=a-=a*=a
其中a-=a==>a=a-a==>0
最终结果 0
2
a/=a+a==>a=a/(a+a)==>0
最终结果 0

1:
(1)12+=12-=12*=12;
(2)12+=12-=12=12*12;
(3)12+=12-=144;
(4)12+=12=12-144;
(5)12+=-132;
(6)a=12+(-132);
(7)a=-120;
a=-120;
2:
(1)a/=a+a
(2)12=12/12+12;
(3)a=1+12;
a=13;