执行下面程序段后,y的结果是____。int x,y;x=y=2;x=x-2&&(y=y+1);printf(“%d“,y);A。3 B.2 C.1 D。0

Posted 王睿丶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了执行下面程序段后,y的结果是____。int x,y;x=y=2;x=x-2&&(y=y+1);printf(“%d“,y);A。3 B.2 C.1 D。0相关的知识,希望对你有一定的参考价值。

1、题目

在这里插入图片描述

2、知识点

  • 基础运算
  • 运算符的优先级顺序
  • &&短路机制

3、要做好的功课

讲之前,先看下这张表
在这里插入图片描述

4、开始解题

在这里插入图片描述

根据运算符的优先级顺序
在这里插入图片描述
‘-’号要比‘&&’符号优先级更高,所以先执行
在这里插入图片描述
那么x-2等于0
&& 的意思是说:两边都为真,才会返回真,否则为假
为此, && 有个短路机制,就是当一方为假时,另一方不再执行,因为没有意义。
所以说,当 x-2=0,执行&&的时候,发现左边为假,右边的(y=y+1)就不执行了。
所以y = 2

以上是关于执行下面程序段后,y的结果是____。int x,y;x=y=2;x=x-2&&(y=y+1);printf(“%d“,y);A。3 B.2 C.1 D。0的主要内容,如果未能解决你的问题,请参考以下文章

c语言,下面程序的运行结果是?

计算机等级考试真题3(JAVA)

为什么执行x in range(y)如此之快

进制转换

CF1093G Multidimensional Queries

scala 函数定义方法们