若有定义:int m=5. n=3则表达式(m+1,n+1,(--m)+(n--))的值是()。
A.6 B.7 C.8 D.9
m + 1: 计算为 6,但不影响最终结果。 n + 1: 计算为 4,但不影响最终结果。 (--m) + (n--): --m: m 先减 1,变为 4。 n--: n 参与运算为 3,然后自减为 2。 计算结果为 4 + 3 = 7。 因此,整个表达式的值是 7。
n--不是有括号吗
m+1,n+1不是m+=1,n+=1,所以m,n值不变
--m ,m = 4
n--,n=3
3+4=7
逗号运算符,用于连接两个或更多的表达式,但它的结果只是最后一个表达式的值。在这个例子中,表达式是(m+1, n+1, (--m)+(n--))。首先,m+1和n+1被计算,但是并没有赋值回m和n,因此没有改变m和n的值。只有(--m)和(n--)才会改变m和n的值。
,
(m+1, n+1, (--m)+(n--))
m+1
n+1
(--m)
(n--)
前面的m+1,n+1都没赋值,只要执行最后括号里的 - - m+n
注意有括号
B
这是用两个逗号将三个表达...
用户登录可进行刷题及查看答案
这是用两个逗号将三个表达式连成的一个逗号表达式。 计算该逗号表达式值时,从左至右逐一计算每个表达式的值。该逗号表达式的值是最后一个表达式的值,该表达式类型也是最后一个表达式的类型。所以这个表达式(m+1,n+1,(--m)+(n--)),m的最后的值(--m)之后m是4,n的值(n--)之后n还是3,所以m+1 的值是 5;n+1的值是4,(m+1,n+1,(--m)+(n--)) 最终的值应该是 5,4,7
登录后提交答案