8个回答
展开全部
这个题可以换成下面的形式:
int a=2, b=1, c=0;
if(a++ || (b-- && c++))
printf("%d, %d, %d\n",a,b,c);
else
printf("AAA\n");
这样看着就比较顺眼了,在执行运算符:||
由于a++ >0因此表示式为真(截断法则),||右边的不再执行,也就是(b-- && c++)不再执行。
因此,a=3,b=1,c=0
int a=2, b=1, c=0;
if(a++ || (b-- && c++))
printf("%d, %d, %d\n",a,b,c);
else
printf("AAA\n");
这样看着就比较顺眼了,在执行运算符:||
由于a++ >0因此表示式为真(截断法则),||右边的不再执行,也就是(b-- && c++)不再执行。
因此,a=3,b=1,c=0
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
,电脑截图可以通过快捷键的方式进行截图,快捷键的操作指令是Print Screen(简称PrtSc),在键盘上面可以轻松地找到这个按键,使用这个键后就可以实现全屏截图,但是这种方式比较的单一,只能全屏截图.有时候通过这种方式截屏不知道图片保存在哪里去了,这个时候你可以通过画图将这个图片保存在其他地方.点击开始菜单,在windows附件里面找...,电脑截图可以通过快捷键的方式进行截图,快捷键的操作指令是Print Screen(简称PrtSc),在键盘上面可以轻松地找到这个按键,使用这个键后就可以实现全屏截图,但是这种方式比较的单一,只能全屏截图.有时候通过这种方式截屏不知道图片保存在哪里去了,这个时候你可以通过画图将这个图片保存在其他地方.点击开始菜单,在windows附件里面找...
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
因为优先级和结合性都是在决定操作数的结合顺序,而与表达式的执行顺序没有关系。
例如: 0 && a++中,虽然++的优先级比&&高,但是右边的式子始终不会执行,因为表达式从左到右执行,&&先识别到左边的0,直接短路。
题目中的表达式可以这么理解:a++ || (b-- && c++),从优先级和结合性来看,b--和c++先和&&结合,a++再与其值结合,以上体现了||和&&优先级的差异;但是执行上来说,还是从左向右,发现a++为真,就不继续向右执行了。
例如: 0 && a++中,虽然++的优先级比&&高,但是右边的式子始终不会执行,因为表达式从左到右执行,&&先识别到左边的0,直接短路。
题目中的表达式可以这么理解:a++ || (b-- && c++),从优先级和结合性来看,b--和c++先和&&结合,a++再与其值结合,以上体现了||和&&优先级的差异;但是执行上来说,还是从左向右,发现a++为真,就不继续向右执行了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询