若有定义:int i,j;则表达式(i=2,j=5,i++,i+j++)的值是( )

我要过程 谢谢
2024-12-25 21:16:09
推荐回答(5个)
回答1:

答案是8,这个是一逗号表达式,从左到右计算用最后一个表达式的值作为整个逗号表达式的值,也就是i+j++是整个表达式的值。

回答2:

最后一条错了,j++是先赋值再自加,所以最后一条的结果是i+j=8,j=6,最后结果为8

回答3:

答案是8
50407、
若有定义:int
i,j;则表达式(i=2,j=5,i++,i+j++)的值是(
)。
答案:b
a、
7
b、
8
希望回答的还不算太晚

回答4:

8

回答5:

先执行(i=1,1+9)>9,()表达式的值,是()内最右边式子的结果,所以是10,10>9,所以第2步是执行i++||++i.
因为之前已执行了i=1,所以i++的取值是1,取值后将i变成2,所以i++||++i的左边是逻辑真值,根据编译器的优化,右边的++i不再计算,所以i++||++i的最终结果是真,即1,所以j=1