纠错

例题:


2017-11-14

9.
(单选题)以下程序的输出结果为:

1   public static void main(String args[]) {       
2       int a=10;      
3       int b=20;      
4       boolean flag=a++>b--&&b++>a--;     
5       System.out.println(flag+",a="+a+",b="+b);      
6    }  

A.
false,a=11,b=19
B.
false,a=10,b=20
C.
true,a=11,b=19
D.
true,a=10,b=20

注: 原答案为B 。正确答案为A
错误原因:
&& 的知识点为扎实。
&& 有开关之意,即 && 左面的式子如果不是true ,则右面不需要进行计算。
因此: boolean flag=a++>b–&&b++>a–; 此句在得出 a++ > b– – 后 b++>a– – 不计算。
结果 : a == 11 ,b == 19。 故选A


13.
(单选题)下列代码的输出结果是:()。

01  public static void main(String[] args) {       
02    int i = 24, j = 32, h = 58;      
03    switch (j - i) {     
04    case 7:      
05     h++;    
06    case 8:      
07     h++;    
08    case 9:      
09     h += 2;     
10    case 10:     
11     h += 3;     
12    default:     
13     h /= j;     
14    }    
15    System.out.println(h);       
16   }   
 A.59   B.61  C.2   D.1

注: 原答案为 A , 正确答案为 C
错误原因:
break 语句的用法;
当switch 语句中 ,case 语句满足后,后面的条件无需判断,直接执行,直到遇到break,才结束switch语句。
因此:case 8 满足后 ,后面 h++ , h += 2 , h += 3 , h /= j 都会执行
所以结果为 h == 2 。


10.
(单选题)请看下列代码:


01  public void testType() {       
02    if (isType(1)) {     
03     System.out.println("Type");     
04    } else {     
05     System.out.println("Not type");     
06    }    
07   }     
08   public boolean isType(int type) {     
09    if (type == 1) {     
10     return false;       
11    }    
12    return true;     
13   }  

调用testType方法,程序编译和运行的结果是:()。B
A.
输出:Type
B.
输出:Not Type
C.
代码 if (isType(1)) { 行,编译错误
D.
代码 return true; 行,编译错误

注:正确答案为 B
本题考点 对if语句的理解
** if (条件语句){
条件语句为true时执行

else {
条件为false时执行
} **


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值