问题
单项选择题
以下程序的输出结果为( )。
public class Main
public static void main(String[] args)
int i=0, j=0, a=6;
if((++i>0)||(++j>0)) a++;
System. out. println( "i=" +i+", j ="+j+", a="+A) ;
A) i=0, j=0, a=6
B) i=1, j=1, a=7
C) i=1, j=0, a=7
D) i=0, j=1, a=7
答案
参考答案:C
解析: 因为表达式(++i>0)先进行了i自增1的运算,所以i的值不可能为0。因此答案 A和D都不对。
因为表达式(++i>0)的值为“真”,对于“或”运算来说只要运算符“||”左边的值为“真”,已确定了整个表达式的值为“真”,因而不再去做“||”运算符右边的运算,所以++j的运算并未进行。因此,答案C是正确的输出结果。