下面这个程序中(m=a>b)&&(n=c<d);是什么意思

#include<stdio.h>main(){inta,b,c,d,m,n;a=5;b=6;c=7;d=8;m=2;n=2;(m=a>b)&&(n=c<d);print... #include<stdio.h>
main()
{
int a,b,c,d,m,n;
a=5;
b=6;
c=7;
d=8;
m=2;
n=2;
(m=a>b)&&(n=c<d);
printf("%d",n);
getch();
}
展开
百度网友ad8bb83
2011-12-10 · TA获得超过4259个赞
知道大有可为答主
回答量:1469
采纳率:100%
帮助的人:1632万
展开全部
(m=a>b)&&(n=c<d);
由于a>b,即5>6为假,所以m=0,0&&任何值都为0,所以(n=c<d);的运算被短路,没有进行运算,所以n仍然等于原值2,故输出2.

&&和||,也称为短路运算符,这个题目考察的就是这个功能
0&&任意值=0,1||任意值=1,后面任意值的表达式都被短路掉,不进行运算。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式