C语言中,若有int a=5;则逗号表达式a=2*6,a*3,a+5的值是---------.

问题描述:

C语言中,若有int a=5;则逗号表达式a=2*6,a*3,a+5的值是_________.
我觉得是12
因为后面的a*3,a+5,并没有给a赋值,因为它不是a=a*3,a=a+5
1个回答 分类:综合 2014-11-14

问题解答:

我来补答
我认为是17,因为这是一个逗号表达式,里面有2个逗号,3个式子!逗号表达式的值,以最后一个式子的值为值,也就是a+5.但是他是从前往后依次做算的,运算第一个式子后,a是12,运算第二个,a不变还是12,运算第三个式子,式子的结果就是17
再问: 为什么a*3没有赋值而a+5赋了
再答: 谁说是a+5赋值了,是2*6赋值了,本题目中的a最终是12,而逗号表达式的值是17。人家没问a的值啊
再问: 我那个去
再答: 不客气,再补充一下,其实本式子的等价形式是这样的(a=2*6),(a*3),(a+5),这三个式子构成一个表达式。楼主千万不要想成是这样的:a=(2*6,a*3,a+5)。
 
 
展开全文阅读
剩余:2000
上一页:算数过程
下一页:enjoy的反义词