#include <stdio.h> main() { int a,b; a=1,b=(++a)+(++a); printf("%d,%d\n",a,b); }

答案为什么是3,6??我怎么老理解为3,5?求解!!... 答案为什么是3,6??我怎么老理解为3,5?求解!! 展开
 我来答
匿名用户
2012-08-19
展开全部
先进行++a,++a(最后a=3),再进行括号外面的加法计算b=a+a=3+3=6
更多追问追答
追问
a=1,b=(++a)+(++a)  
所以有,第一个++a=2,第二个++a=3
然后b=2+3不就是5了。。。。。请指点我哪点错了。。
追答
不是,++a的意思是先进行a=a+1,有因为有两个++a,所以执行两次a=a+1,也就是a=3,前后两个都是三,初学者容易理解成前后两个a不是同一个数,其实不是,你慢慢就能理解。初学者容易混淆这个问题。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式