设a,b,c均为1,则执行赋值语句c=((a-->0?0:1),(++b<0?1:a--)后,a,

设a,b,c均为1,则执行赋值语句c=((a-->0?0:1),(++b<0?1:a--)后,a,b,c的值分别为[]。A0,1,0B0,1,1C-1,2,0D-1,2,... 设a,b,c均为1,则执行赋值语句c=((a-->0?0:1),(++b<0?1:a--)后,a,b,c的值分别为[ ]。

A 0,1,0
B 0,1,1
C-1,2,0
D-1,2,-1
希望有详细过程,谢谢!
展开
 我来答
野人无事不言L
2016-04-15 · TA获得超过1413万个赞
知道顶级答主
回答量:2242万
采纳率:0%
帮助的人:144亿
展开全部
int a=0,b=1,c,d; c=(!(a='0')&&b--,a+b); 因为表达式中出现逗号,这是个逗号表达式,赋值给c的一定是逗号表达式最后一个式子计算出的值,那么这个语句可以分解为 a='0'; //a=48 d=!a&&b; //由于&&运算时,前边的!a为0,即假,后面的b--就被省略不算了,所以不执行b--; c=a+b; //c=49,表达式结果是49选D,这时b仍然等于1
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式