若已定义: int i=5,j; 则语句 j=(++i)+(i--); 运行后的 j 值为( )

美女求帅哥指导,帅哥求美女指导,谢了!... 美女求帅哥指导,帅哥求美女指导,谢了! 展开
 我来答
俏姐儿
推荐于2018-05-10 · TA获得超过247个赞
知道小有建树答主
回答量:326
采纳率:92%
帮助的人:138万
展开全部
i=5;j=12;
++i表示i先自加1,然后再做别的运算
i--表示先做别的运算,其他运算完之后再自减1,这个跟有没括号没关系。
运算顺序是:
(1)i=i+1=6
(2)j=6+6=12
(3)i=i-1=5
ayktx
2013-07-03 · TA获得超过668个赞
知道小有建树答主
回答量:946
采纳率:33%
帮助的人:407万
展开全部
int i=5,j; 
j=(++i)+(i--);

// 相当于

++i;       // i = 6
j = i + i; // i = 6, j = 12
i--;       // i = 5

所以结果是 j = 12, i = 5

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
放羊娃zwp
2018-11-02
知道答主
回答量:4
采纳率:0%
帮助的人:2600
展开全部
11
虽然i--先用i,再减一,但是有括号,所以还是结果++i之后的结果再减一得到5,所有j= 6+5=11
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
儒雅的淡淡灬
2013-07-03 · 超过23用户采纳过TA的回答
知道答主
回答量:102
采纳率:0%
帮助的人:74.9万
展开全部
12
++i 是先对i进行自加,然后再对i 进行使用,后面的--i,是先使用i ,然后再对i 进行自减。。
所以j=6+6
因为第一次自加后i=6,所以第二次i初值是6~~~~
追问
莫非++i=6?
追答
你的i初值是5,++i意思就是i自加1,所以++i就是6
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
粟振宇
2013-07-03
知道答主
回答量:6
采纳率:0%
帮助的人:8613
展开全部
12吧
先算++i i自增为6
+(i--)i先所加法再做自减
像++、--这类单目运算主要看他在变量的前面还是后面,后面的话都是后算的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式