若执行以下程序段,int a=1,b=2,m=2,n=2;(m=a>b)&&++n;则n的值是?为什么?请详细解释以下谢谢~

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/06 02:55:33

若执行以下程序段,int a=1,b=2,m=2,n=2;(m=a>b)&&++n;则n的值是?为什么?请详细解释以下谢谢~
若执行以下程序段,int a=1,b=2,m=2,n=2;(m=a>b)&&++n;则n的值是?为什么?请详细解释以下谢谢~

若执行以下程序段,int a=1,b=2,m=2,n=2;(m=a>b)&&++n;则n的值是?为什么?请详细解释以下谢谢~
当然应该得2了
前面不用去管,n初始值为2,执行(m=a>b)&&++n;是有说法的,首先a>b的结果是false,m的内容是0,括号中的运算结果是false,而紧跟的是逻辑与,前面已经是false了,那么不管后面是什么结果都是false,所以后面的内容实际是不运行的,所以n的值没有变,仍然是2;
如果改为(m=a