执行语句int a,b,c; a=(b=c=3, c++, b+=c);则a的值是?请说明理由

 我来答
萨好慕仝金
2019-06-04 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:27%
帮助的人:893万
展开全部
a=(b=c=3,c++,b+=c)是一个问号语句,a等于问号表达式=(b=c=3,c++,b+=c)最后一个语句b+=c的值。c=4,b=b+c=4+3=7;a=7。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ghw_200112402
2007-03-20
知道答主
回答量:90
采纳率:0%
帮助的人:0
展开全部
a=7
逗号表达式
其一般形式为: 表达式1,表达式2 其求值过程是分别求两个表达式的值,并以表达式2的值作为整个逗号表达式的值。

把逗号表达式扩展为以下形式: 表达式1,表达式2,…表达式n 整个逗号表达式的值等于表达式n的值

执行分析: 先执行括号中的,首先给变量b ,c赋值,此时b=3,c=3;
再执行C++,此时c=4,执行b+=c,此时b=7,c=4;最后执行a=(b+=c),把b的值赋值给a,a=7
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
乐正涵柳3
2007-03-20 · TA获得超过952个赞
知道小有建树答主
回答量:650
采纳率:100%
帮助的人:691万
展开全部
首先执行b=c=3,
然后执行c++,//c=4
最后执行 b+=c//该表达式返回7
所以a=7
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2007-03-20
展开全部
逗号表达式,取最后面一个结果
B=C=3; // B=3,C=3
C++; // C=4
B+=C; // B=B+C=3+4=7

所以结果:A=7
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友8385de2
2007-03-20 · TA获得超过397个赞
知道小有建树答主
回答量:248
采纳率:0%
帮助的人:201万
展开全部
可以写成这样:
int a,b,c;
b=3;
c=3;
c=c+1;
b=b+c;
a=b;
这样写谁都可以看出来了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式