设有int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>b)之

设有inta=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>b)之后的n值为什么多少!可否解释一下... 设有int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>b)之后的n值为什么多少!可否解释一下 展开
 我来答
金色潜鸟
2017-10-06 · TA获得超过3.2万个赞
知道大有可为答主
回答量:1.3万
采纳率:89%
帮助的人:5710万
展开全部
(m=a>b) 是赋值表达式,若 a 大于 b 则 m 得真,否则m得假。 a=1,b=2, a>b 为假,故 m=假。赋值表达式(m=a>b)为假。m=0.
(m=a>b)&&(n=c>b) 是 2个 赋值表达式 的 ”逻辑与“ 计算,当前面(m=a>b)为假时,{(m=a>b)&&(n=c>b) } 必得假, 则 不需要计算 (n=c>b) ,程序运行将略去(即跳过) n=c>b 的计算,所以 n=2 不变化。 结果 n=2。
wjshan0808
推荐于2017-11-13 · TA获得超过601个赞
知道小有建树答主
回答量:696
采纳率:74%
帮助的人:366万
展开全部
m=a>b=0=false;
&&运算有短路运算当前者为false时 不再去判断后者了
所以 n=2;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2017-11-09
展开全部
问题分析:这是考查语言运算符。=的优先级最低,其次是(),然后是>,<,最后是&&。
问题回答:n=3。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式