给出下面程序段: if(x>0){System.out.println("Hello.");} else if(x>-3){System.out.println("Nice to meet you!");} else{System.out.println("How are you");} 若打印字符串“How are you”,则x的取值范围是
A.x>0
B.x>-3
C.x<=-3
D.x<=0&x>-3
参考答案:C
解析: 本题考查Java语言的if…else if语句。当需要处理多分支时,就可以使用 if...else if语句。其基本格式为: if(表达式1)语句1 else if(表达式2)语句2 else if(表达式3)语句3 else 语句n 需要注意,表达式是任意一个返回布尔型数据的表达式,不能是数值型(这比C、 C++的限制要严格):每个单一的语句后都必须有分号:语句1,语句2,……,语句 n可以为复合语句,这时要用大括号{}括起;else子句是任选的:若表达式的值为true,则程序执行语句1,否则执行语句2。 当x>0时,执行System.out.println("Hello.")语句,否则(x<=0时)执行else if后的语句;在此又有分支,当x>-3时System.out.println("Nice to meet you!”),只有当x<=-3时才会执行System.out.println("How are you"),输出“How are you”字符串,所以选项C正确。