k=(i++)+(i++)+(++i),i=3,k=? tc

来源:百度知道 编辑:UC知道 时间:2024/05/16 10:51:18

答案是12.
k=(i++)+(i++)+(++i),中i++的意思是先把i(i=3)的数值运算再加1.而++i是先运算加1.(i++)+(i++)+(++i),三个分别计算的i=6;
k=3+3+6=12;

而k=(i++)+(i++)你可以运行一下,k=6;

13
第一个i++返回i自增前的值3,但是i自增,这时i为3,表达式返回3
第二个i++同样,但是i已为4,返回4,同样,i自增,变成5
第三个++i返回i自增后的值,返回6。
这样3+4+6=13

主要是搞清楚++的前置和后置的区别:前置是先加了在用加后的数做处理,而后置是先用数做完处理在进行自加运算!

所以本题答案应该是13

-_-!
这种题目最无聊了~
真正的程序里绝不会把i++,++i写在同一句代码里的

k=7;
原式为k=i+i+i+1;i=i+3;