Java练习题(一)

发布时间 2023-04-27 19:16:48作者: 南极星丶

1、下列程序编译或者运行的结果是(D )

     Public static void main(String args[]){

          Int a = 10;

          Int b,c;

          If(a > 50){

              b = 9;

}

c = b + a;

System.out.println(c);

}                         bc未赋值

A、10  B、19  C、9  D、编译错误

2、下列语句片段中,four的值为( D)

int three = 3;

char one = ‘1’;

    char four = (char)(three+one);

     A、3  B、1   C、31  D、4

3、下列代码的运行结果为( D)

Public static void  main(String args[]){

Int x = 1;

Int y = 1;

Int z = 1;

If(x--== 1 && y-- == 1 || z-- == 1){

System.out.println(“x=”+x+”,y=”    +y+” ,z=”+ z);

}

}

A、x = 0,y = 1,z = 1;

B、x= 0,y = 2,z = 2;

C、X = 0, y = 2,z = 1;

D、x = 0,y = 0,z = 1

4、下列代码执行后i和j的值分别是什么( C)

Int i = 1;

Int j;

j = i++; /j==1

A、1,1

B、1,2

C、2,1

D、2,2

5、下面哪个表达式的数值与数组下标总量相等( D)

A、m.length();

B、m.length

C、m.length()+1;

D、m.length-1;

 

6、结果为(B )  

boolean m = true;

If(m == false){

System.out.println(“False”);

}else{

    System.out.println(“True”);

}

A、False

B、True

C、None

D、无输出

6、下列表达式正确的是(C )

A、byte b = 128;

B、Boolean flag = null;

C、Long a  =2147483648L;

D、float f = 0.239;

 

7、下列代码的输出结果是( A)

Public static void main(String args[]){

    Int a = 54;

Int b = 5;

System.out.println(a/b);

}

A、10

B、10.40

C、10.4

D、10.0

8、结果为(ABD )

public class Test{

       Public static void ,main(String args[]){

   Int I = 5;

do{

   System.out.println(i);

}while(--I > 3);

System.out.println(“finished”);

}

}

A、5   B、4   C、6   D、finished

 

9、下列代码段中,循环执行的次数是(C )

Public static void main(String args[]){

   Int words = 27;

   do{

    words--

}while(words <= 18)

 

}

A、9次  B、0次   C、1次 D、超过9次

10、设x = 1,y = 2,z = 3,则表达式y+=z--/x++的值是(D )。

A、3     B、3.5   C、4   D、5

11、Java是从(B )语言改进重新设计。

A.Ada B.C++ C.Pasacal D.BASIC  

12、下列语句哪一个正确(B )

A.Java程序经编译后会产生machine code

B.Java程序经编译后会产生byte code

C.Java程序经编译后会产生DLL

D.以上都不正确  

 

13、下列运算符合法的是(A )

A.&& B.<> C.if D.:=  

 

14、执行如下程序代码

  a=0;c=0;

  do{

     --c;

     a=a-1;

  }while(a>0);

  后,C的值是(C )

   A.0 B.1 C.-1 D.死循环  答案:

 

15、下列哪些不是JAVA关键字(A)

A)goto    B)native  C) interface  D)class

 

16、给定某java程序片段,如下: int i=1; int j=i++; if((i>++j)&&(i++==j)) i+=j; System.out.println(i); 该程序运行后,i的输出结果为(B)。(选择一项)

A、1

B、2

C、3

D、4

17、在java中,下列赋值语句正确的是(ACD)。(选择三项)

A、char c='a';

B、char c="a";

C、char c=97;

D、char c=new Character('a');

 

18、编译并运行下面的Java代码段: char c='a'; switch (c) { case 'a': System.out.println("a"); default: System.out.println("default"); } 输出结果是(B)。(选择一项)

A、代码无法编译,因为switch语句没有一个合法的表达式

B、a default 

C、a

D、default

 

19、在 JAVA编程中,Java编译器会将Java程序转换为(A)。(选择一项)

A、字节码

B、可执行代码

C、机器代码

D、以上所有选项都不正确

 

20、public class test3{ public static void main(String args[]){ for{int I=0;I<3;I++}{ for{int j=3; j>0;j--}{ If(I==j) continue; System.out.print}n(“I=”+I+”j=”+j) } } } } 上面的JAVA代码编译运行后,下列选项中,(ADE)会出现在输出结果中,(选择三项)  

A、I=0 j=3

B、I=0 j=0

C、I=2 j=2

D、I=0 j=2

E、I=1 j=2

 

21、给定java代码片段,如下: int i=0,j=-1; switch(i){ case 0,1:j=1; case 2:j=2; } System.out.print("j="+j); 编译运行,正确的是(A)。(选择一项)

A、程序编译出错 

B、j=1

C、j=2

D、j=0

二、简答题

  1. 1.   javac和java各自的作用是什么?

Javac是编译java源文件,将源文件编译成字节码文件。

Java是执行字节码文件,并输出程序运行结果。

  1. 2.   int a = 1;意义是什么?

定义一个整型变量a,并且给他赋值为1。

  1. 3.   简单介绍Java中的注释?

注释分为行注释“//“和段注释”/**/“,主要是用来对代码进行解释,帮住其他人来阅读代码的功能,增强代码可读性

  1. 4.   何为Java中的标识符符号?

标识符是方法名、类名、属性名等等,标识符的命名规则为大小写字母、数字、下划线、$组成,长度不限,不能是关键字。

  1. 5.   何为变量和常量?

变量是值可变的量,常量是值不能够变得量。

  1. 6.   简单介绍基本数据类型的划分?

(1)整型:byte,short,int,long。

(2)浮点型:float,double。

(3)逻辑型:boolean

(4)字符型:char。

  1. 7.   请写出基本的数据类型?

Int、byte、double、boolean、long、short、char、float

  1. 8.   数据类型转换分为几种?请举例说明?

隐式类型转换:int a; byte b;a = b为隐式类型转换

b = (byte)a为显式类型转换(强制类型转换)

9.   请介绍常见的运算符号的优先级别

 

 

10. 请简单分支语句的分类?

单分支结构 if

双分支结构 if else

多分支结构 if  else if  else、switch case

11. 请简单介绍循环的分类?

For循环、while循环、do while循环。

12. 该如何去选择某种循环去解决问题?

For:知道循环次数

While:不知道循环次数

Do while:要求循环体至少执行一次。

13. 何为局部变量和全局变量?

局部变量:方法中的变量或者代码块中的变量,只能在相应的方法内访问

全局变量:也叫类变量、实例变量、成员变量,可以全局访问。

14.  何为空指针异常(写出英文异常名称),该如何避免?

NullPointerException,在访问时先判断是否为空,如果为空,则先进行赋值。

三、编程题

有个人想知道,一年之内一对兔子能繁殖多少对?于是就筑了一道

围墙把一对兔子关在里面。已知一对兔子每个月可以生一对小兔子,而

一对兔子从出生后第3个月起每月生一对小兔子。假如一年内没有发生

死亡现象,那么,一对兔子一年内(12个月)能繁殖成多少对?分析:

兔子的规律为数列,1,1,2,3,5,8,13,21

package com.wgh.java;

/**
 * @author Mr.Wang
 * @create 2023/4/27
 */
public class fanzhi {
    public static void main(String[] args) {
        add();
    }
    public static void add(){
            int f1 = 1;
            int f2 = 1;
            int count = 2;
            int zongliang = 4;
        for (int i = 4; i <= 12; i++) {
            f1 = f2;
            f2 = count;
            count = f1 + f2;
            zongliang = zongliang + count;
        }
        System.out.println(zongliang);
    }
}