设整型变量i值为2,表达式(++i)+(++i)+(++i)的结果是( )。 A. 6 B. 12 C. 15

什么情况 ,用C运行的结果是13
2024-12-03 15:28:32
推荐回答(5个)
回答1:

我支持答案C
我看过VC++汇编后的程序;
用VC++编译器会得到15,是因为vc++编译器会编译成
先将i加三次,变成5 
然后再进行其它运算。
我不知道c++标准是怎么定义这个问题的,也不知道别和编译器怎么编译。

但不要用VC++6.0运行这个代码,因为VC++6.0编译出来是错的,用VC++2008可以;

回答2:

这种很2的题目不用做也罢,不同编译器不同结果,而且谁写程序的时候会写这种代码

回答3:

选B,第一个++i得3,此时i变为3,所以第二个++i得4,此时i变为4,所以第三个++i得5,最后3+4+5=12

回答4:

答案是C
因为先算括号里的,++i应该是在计算之前先i=i+1
所以在计算前,i=5了。所以答案是(5)+(5)+(5)+15

回答5:

我们一步一步的看这个问题
int
i=2;
i++;//i=2自加1后i为3
i++;//i=3自加1后为4
I++;//i=4自加后为5
所以:(++1)+(++1)+(++1)=13
是这个意思吧?
那选择d吧!还有d你没写出来是吧?