A-A+
下面程序段执行结果是()。 int i=5 k; k=(i)+(i)+(i++); prin
问题详情
下面程序段执行结果是()。 int i=5,k; k=(i)+(i)+(i++); printf("%d,%d",k,i);
A.24,8
B.21,8
C.21,7
D.24,7请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:B
解析:k=(++i)+(++i)+(i++)表达式中,“++”号在i前面的有两个,所以在计算k之前,i要先增两次,即i变为7,然后再将3个7相加,使k得21;表达式中“++”号在i后面的有1个,所以得出k的值以后i又增1次变为8。