欢迎光临
我们一直在努力

今年高考数学答案解析,21年数三及答案解析

一、选择题

1.分析如下Java代码,编译运行的输出结果是( )。(选择一项)

public static void main(String[ ] args) { boolean a=true; boolean b=false; if (!(a&&b)) { System.out.print(“!(a&&b)”); }else if (!(a||b)) { System.out.println(“!(a||b)”); }else { System.out.println(“ab”); }}

A.!(a&&b)
B.!(a||b)
C.ab
D.!(a||b)ab

答案:A

2.下列选项中关于变量x的定义,( )可使以下switch语句编译通过。(选择二项)

switch(x) { case 100 : System.out.println(“One hundred”); break; case 200 : System.out.println(“Two hundred”); break; case 300 : System.out.println( “Three hundred”); break; default : System.out.println( “default”); }

A.double x = 100;
B.char x = 100;
C.String x = “100”;
D.int x = 100;

答案:DC
解析:switch语句中case标签在JDK1.5之前必须是整数(long类型除外)或者枚举,不能是字符串,在JDK1.7之后允许使用字符串(String)。

3.给定如下Java代码,编译运行的结果是( )。(选择一项)

public class Test { public static void main(String[] args) { int sum=0; for(int i=1;i<10;i++){ do{ i++; if(i%2!=0) sum+=i; }while(i<6); } System.out.println(sum); } }

A.8
B.15
C.24
D.什么也不输出

答案:A
解析:sum = 0+3+5
  
4.以下选项中添加到代码中横线处会出现错误的是( )。(选择二项)

public class Test { public float aMethod(float a, float b) { return 0; } vps云服务器 }

A.

public float aMethod(float a, float b, float c) { return 0; }

B.

public float aMethod(float c, float d) { return 0; }

C.

public int aMethod(int a, int b) { return 0; }

D.

private int aMethod(float a, float b) { return 0; }

答案:BD
解析:方法的重载
构成方法重载的条件:
1.不同的含义:形参类型、形参个数、形参顺序不同
2.只有返回值不同不构成方法的重载
3.只有形参的名称不同,不构成方法的重载
  
5.以下关于方法调用的代码的执行结果是( )。(选择一项)

public class Test { public static void main(String args[]) { int i = 99; mb_operate(i); System.out.print(i + 100); } static void mb_operate(int i) { i += 100; } }

A.99
B.199
C.299
D.99100

答案:B
解析:形参不影响实参的值

二、简答题

1. if多分支语句和switch语句的异同之处。
相同点:都是用来处理多分支条件的结构。
不同点:switch语句只能处理等值条件判断的情况,而且条件只能是整型变量或字符型变量或字符串类型变量。

2. break和continue语句的作用。
break跳出循环,continue结束本次循环,直接进入下一层循环

3. 在多重循环中,如何在内层循环中使用break跳出外层循环。
使用标签
在外层循环前加标签,然后break <标签>

4. 方法重载的定义、作用和判断依据。
方法的重载是指一个类中可以定义多个方法名相同,但参数不同的方法。 调用时,会根据不同的参数自动匹配对应的方法。
重载的方法,实际是完全不同的方法,只是名称相同而已!
构成方法重载的条件:
1.不同的含义:形参类型、形参个数、形参顺序不同
2.只有返回值不同不构成方法的重载
3.只有形参的名称不同,不构成方法的重载

5. 递归的定义和优缺点。
递归的基本思想就是“自己调用自己”,一个使用递归技术的方法将会直接或者间接的调用自己。
简单的程序是递归的优点之一。但是递归调用会占用大量的系统堆栈,内存耗用多,在递归调用层次多时速度要比循环慢的多,所以在使用递归时要慎重。

三、编码题 从键盘输入某个十进制整数数,转换成对应的二进制整数并输出。 import java.util.Scanner;public class test1 {public static void main(String[] args) {// TODO Auto-generated method stubScanner scanner = new Scanner(System.in);System.out.println(“请输入一个十进制整数:”);int number;number = scanner.nextInt();int number1 = number;long output = 0;long i = 1;while(number > 0) {output = output + (number % 2) * i;number = number / 2;i = i * 10;}System.out.println(number1 + “对应的二进制数为:” + output);}} 编程求:∑1+∑2+……+∑100。 public class TEST2 {public static void main(String[] args) {long sum = 0;for(int i = 1;i <= 100;i++) {sum = sum + sum(i);}System.out.println(“结果为:” + sum);}static long sum (int x) {long sum = 0;for(int i = 1; i <= x;i++) {sum = sum + i;}return sum;}} 编写递归算法程序:一列数的规则如下: 1、1、2、3、5、8、13、21、34… 求数列的第40位数是多少。 public class test3 {public static void main(String[] args) {// TODO Auto-generated method stublong result;result = digui(40);System.out.println(“第40位数为:” + result);}static long digui(int n) {long result;if(n == 1 || n == 2) {result = 1;}else {result = digui(n-1) + digui(n-2);}return result;}} 60389460

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。