在C语言中int i,a;执行语句i=(a=2*3,a*5),a+6;后变量i的值不是应该是12吗,为什么会是36

 我来答
匿名用户
2014-01-23
展开全部
这是逗号表达式,逗号表达式的值是最后一个逗号后的表达式的值,注意,有括号: 先算 : a=2*3=6(a=2*3,a*5) 是一个逗号表达式,它的值等于 a*5 的值,即 30 ,(之前a已经等于6)(a=2*3,a*5),a+6 ,是一个逗号表达式,它的值等于 a+6 的值 ,即 30+6=36 故,最终的值是 36
匿名用户
2014-01-23
展开全部
是36是对的 因为要执行逗号后的a+6 但是 逗号前括号里的还是要执行的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-01-23
展开全部
笨呀~看错答案了吧。I的值应该是30。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-01-23
展开全部
不是,a+6的值才是12,a的值是6
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式