设a=1,b=2,c=4,计算表达式:(c=a!=b)&&(a==b)&&(c=b) 执行后a,b,c的值和表达式的值 10
2个回答
展开全部
a=1,b=2,a!=b为1,则c=1,(c=a!=b)为1,a==b为0,则执行结束,因此a=1,b=2,c=1;表达式结果为0
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先计算括号内各表达式的值(注意优先级别):
(c=a!=b)逻辑表达式"!="比赋值表达式“=”优先级别高,先计算逻辑表达式值为1(逻辑运算只有2个结果,1或0,由于a!=b为真,所以值为1);然后把1赋值给c,所以第一个括号内为c=1.
(a==b)的值为零,由于三个括号是逻辑与“&&”运算,根据C语言的短路求值理论,就不用计算第三个括号中的表达式的值,直接得到整个表达式的值为0;三个参数值分别为:a,b不变,c为1。
(c=a!=b)逻辑表达式"!="比赋值表达式“=”优先级别高,先计算逻辑表达式值为1(逻辑运算只有2个结果,1或0,由于a!=b为真,所以值为1);然后把1赋值给c,所以第一个括号内为c=1.
(a==b)的值为零,由于三个括号是逻辑与“&&”运算,根据C语言的短路求值理论,就不用计算第三个括号中的表达式的值,直接得到整个表达式的值为0;三个参数值分别为:a,b不变,c为1。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询