关于C语言的问题。已知 int i = 5; 执行语句 i += ++i; i 的值是 我需要过程!过程!

 我来答
百度网友e20bca8
2013-03-05 · TA获得超过246个赞
知道答主
回答量:47
采纳率:0%
帮助的人:55.2万
展开全部
关于这个问题,你一定要理解优先级的意义~
所谓优先级,就是在执行一个运算时的顺序,比如我们小时候学的先乘除,后加减,意思就是3+5*4这个式子我们是先算后面的5*4,那么如果有个括号,(3+5)*4,那么,就是先算3+5了,为什么?因为乘除法的优先级比加减法高,而括号的优先级又比乘除法要高~如果是相同优先级就是从左到右依次计算了
我们换到你这道题上,+=这个运算符的优先级比++这个运算符低,所以先算++这个运算符,关于这个自加运算符,有是一个考点,++i是先+1,再使用,而i++是先使用,后+1,考虑到你刚接触C语言不久,这条规则你先死记下来,以后慢慢就会明白~
i是5,加1变成6,+=运算符意思是这样的,比如x+=y,就是x=x+y,你也可以理解成把等号移到前面,然后再加一个最开始得字符`
现在我们看这道题目就简单了,i先加一再使用,就变成了6,i=i+i,这时候系统里的i已经是6了,所以就是6+6=12
啰啰嗦嗦说了这么多,还是希望对你有帮助吧~
来自:求助得到的回答
百度网友7f8dfaa
2013-03-05 · TA获得超过160个赞
知道答主
回答量:49
采纳率:0%
帮助的人:19.2万
展开全部
就理解成i=i+(++i),而++i就是i=i+1,将i=5带入i=i+1 ,即将6赋给i,然后i=6+6=12
追问
请问  这是这是哪一方面的 知识 我去看看
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
丰云计相府
2013-03-05
知道答主
回答量:39
采纳率:0%
帮助的人:13.3万
展开全部
根据右结合性,++i此时是6,i+= 相当于i = i+6;此时i是6,所以为12
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
本思一体电脑
2013-03-05 · TA获得超过111个赞
知道小有建树答主
回答量:159
采纳率:0%
帮助的人:95万
展开全部
你选择是正确的。如果是i++你觉得是多少呢?
追问
我 是 看不明白 今天第一天学C,就出了这个习题现在一头雾水。
追答
++i:表示i先加1在使用i。
i++:表示先使用i,在自加1
可以根据++的位置来记忆
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式