这是一个C++二级考试的题,请高手指教一下

2025-03-06 18:15:14
推荐回答(3个)
回答1:

答案是B
首先你要明白逗号表达式的含义才能掌握。
逗号表达式:比如(表达式1,表达式2),它最终返回的是第二个表达上也就是表达式2的值。

因此,在A中,首先先执行括号里面的语句y=z=8,得到y==8,z==8,接着执行4*6,得到24,并且该表达式返回第二个表达上的值,也就是24,因此x==24。
同理可得B中,z==8,x==24,y==24
C中x==8 y==8 z==8
D中可以把.x=(y=z=8)看成是表达式1,4*6看成是表达式2,因此整个语句x=(y=z=8),4*6;的返回值是24..所以先执行表达式1得x==8 y==8 z==8

回答2:

括号优先计算,
逗号表达式是从左往右.
A是x=24,y=z=8
B是x=y=24,z=8
C是x=y=z=8
D是x=y=z=8

回答3:

B