i=3则k=(i++)+(++i)+(i++)执行后k=?;i=?求详解

网上有的说k=15,那这样就是说i++是5,可是i++不是i+1吗我是这样想的i++是运算后再加1;++i是先加一在运算的;所以是不是k=3+4+3=10这样的啊?... 网上有的说k=15 ,那这样就是说i++是5,可是i++不是i+1吗
我是这样想的 i++是运算后再加1 ;++i是先加一在运算的 ;所以是不是k=3+4+3=10这样的啊?
展开
 我来答
prince小树叶
推荐于2018-03-14 · 超过11用户采纳过TA的回答
知道答主
回答量:26
采纳率:0%
帮助的人:22万
展开全部

k=12,i=6;

系统是这样算的:先令i++与++i同时运算,结果为7, ++i运算后又被前面的i++增1,结果5;所以最后的i++参与运算后自增1为6;

k=7+5=12;

代码如下:

int k, i = 3;

k = (i++) + (++i) + (i++);

cout <<"k="<< k << " " << "i="<<i;

getchar();

return 0;

}运行结果:

百度网友34b1cab
2014-09-07 · TA获得超过202个赞
知道小有建树答主
回答量:133
采纳率:0%
帮助的人:87.2万
展开全部

不对,应该是k=3+5+5=13。i=6;

希望采纳,谢谢。

如你有其他问题,可以百度pkaust8,查看我的经验。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式