A-A+

下面程序段执行结果是()。 int i=5 k; k=(i)+(i)+(i++); prin

2022-08-06 03:10:40 问答库 阅读 175 次

问题详情

下面程序段执行结果是()。 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。

考点:程序