java基础语法测试题和答案(三)

Java基础第三次考试

一、选择题(每题2分,共40分

  1. 在java中下列关于自动类型转换说法正确的是(
    1. 基本数据类型和String相加结果一定是字符串型
    2. char类型和int类型相加结果一定是字符
    3. double类型可以自动转换为int
    4. char + int + double +"" 结果一定是double;
  2. 下面关于数组的说法中,错误的是(
    1. 在类中声明一个整数数组作为成员变量,如果没有给它赋值,数值元素值为空
    2. 数组可以在随便存储不同类型的数据
    3. 数组必须先声明,然后才能使用
    4. 数组本身是一个对象
  3. 下面代码输出结果是( )。

         int i=0,s=0;

         do{

               if (i%2 = = 0 ){

                   i++;

                    continue;

                 }

                 i++;

                 s = s + i;

           } while (i<7);

          System.out.println(s);

  1. 16
  2. 12
  3. 28
  4. 21

4、下列的哪个赋值语句是不正确的?

A)float f = 11.1;

    B)double d = 5.3E12;

    C)float  d = 3.14f ;

D)double  f=11.1E10f;

5,顺序执行下列程序语句后,则b的值是

    String  a="Hello";

    String  b=a.substring(0,3);

    A)Hello

    B)hello

    C)Hel

D)null

6、运算符优先级别排序正确的是(

A.由高向低分别是:()、!、算术运算符、关系运算符、逻辑运算符、赋值运算符;

B.由高向低分别是:()、关系运算符、算术运算符、赋值运算符、!、逻辑运算符;

C.由高向低分别是:()、算术运算符、逻辑运算符、关系运算符、!、赋值运算符;

D.由高向低分别是:()、!、关系运算符、赋值运算符、算术运算符、逻辑运算符;

 

 

7.以下哪个方法是JAVA程序执行的入口?

A)main方法     B)init方法    C)start方法    D)run方法

 

8.以下关于int类型取值范围说法正确的是

A)int 类型的取值范围是  -127 ~ 128

B)int 类型的取值范围是  --215 ~ 215-1

C)int 类型的取值范围是  --231 ~ 231-1

D)int 类型的取值范围是  --263 ~ 263-1

9.以下关于boolen类型取值正确的是

A)false      B)yes             C)0            D)right

10.以下哪一个不是java循环结构的语句

A)switch      B)for     C)while      D)do…while

11.下面的哪一个声明是合法的?

A) public voids  amethod(int i)     B) public void amethod(void)

C) void public amethod(int i)         D) public void amethod(int i)

 

12, return 语句哪个说法错误:________

A   可以让方法返回数值

B   方法都必须含有  

C   方法中可以有多句return   

D   用来返回字符串

13.下列程序段执行后的结果是_____

String  s=new String("abcdefg");

for(int i=0;i<s.length();i+=2){

    System.out.print(s.charAt(i));

}  

A) aceg          B) ACEG       C) abcdefg        D) abcd

 

14,已知在某类中定义有如下方法:

public int getNum(int num){

int sum=1;

for(int i=1;i<=num;i++){

sum*=i;

}

return sum;

}

调用getNum方法当实际参数num值为3时,请问return的sum值为几?

A)0            B)  1             C)  3           D)   6

 

 

15.变量命名规范说法正确的是( )

A、变量由字母、下划线、数字、$符号随意组成; B、变量不能以数字作为开头;

C、A和a在java中是同一个变量; D、不同类型的变量,可以起相同的名字;

16,类型转换说法错误的是( )

A、不管什么类型的数据都可以进行转换;

B、java中的数据类型转换分为:自动类型转换和强制类型转换;

C、兼容的数据由低向高赋值时会发生自动类型转换;

D、兼容的数据由高向低赋值时需要强制类型转换;

 

17,java中不是有效的注释声明( )。

A、//声明变量; B、*/这是注释*/; C、/**方法作用*/; D、/*算术表达式*/;

 

18,以下类型转换错误的是( )

A、double d=20;int a=(int)d; B、int a=12+"year";

C、double d=20+3.123; D、String str=23+"ttt";

 

19阅读下列代码,假设程序完整,说法正确的是( )

switch(i){

      default:   System.out.println("无匹配");

      case 1:    

                 System.out.println("Test1");

      case 2:

      case 3:

                 System.out.println("Test2");

                 break;

      case 4:

                 System.out.println("Test3");

                 break;

}        

A. 语法错误,default语句不能写在case语句前面;

B. case语句后面没有break语句,程序不能运行;

C. 如果i的值为2,程序什么都不会输出;

D. 如果i的值为4,程序输出:Test3;

 

 

20,以下程序的运行结果是:( )

public class Increment{

public static void main(String args[]) {

int a;

a = 6;

System.out.print(a);

System.out.print(a++);

System.out.print(a);

}

}

A.666

B.667

C.677

D.676

 

二,多选题(一题3分 ,共30分)

1.下面哪种情况可以实现自动转换 。

A)byte型转换成int型

B)int型转换成byte型

C)float型转换成double型                      

D)double型转换成float型

2,下面哪些语句不能用于switch(参数)语句的参数?

  1.  float f=1.0;       B) int i=1;   C)boolean b=false;     D)char c=’a’

 

3、下面main()方法的定义哪些是正确的_______

A) public static void main(String args[]) {}   

B) public static void main(String[]) {}

C) public static void main(String[] args) {}   

D) public static void main(String [] x) {}

4,已知for循环循环结构语法如下:

for (表达式1; 表达式2; 表达式3) {

     //循环体

}

以下说法错误的是:

A)表达式1进行变量初始化,在整个循环中可执行多次

B)表达式2在整个循环判断时只执行一次

  C)表达式3可以放在循环体最后一条语句执行                     

D)三个表达式中间的分号可以省略不写

5,下列有关switch的说法,正确的是( )。

A、switch结构可以完全替代多重if结构;

B、条件判断为等值判断,并且判断的条件为double变量时,可以使用switch结构;

C、条件判断为等值判断,并且判断的条件为字符时,可以使用switch结构;

D、条件判断为等值判断,并且判断的条件为整型变量时,可以使用switch结构;

6,变量名命名正确的有( )

  1. case; B、s1_66; C、10xf; D、$xf3accp;

 

7,下面说法中正确的是( )

A.调用String对象的length()方法可获得字符串长度

B.调用String对象的length属性可获得字符串长度

C.调用数组变量的length()方法可以获得数组的长度

D.调用数组变量的length属性可以获得数组的长度

 

8,关于类与对象说法正确的是()。

A、类是对象抽象的产物 B、类是创建对象的模板

C、一个类只能有一个对象 D、对象是类的实例

 

9,public void setParam(float p1,double p2){},在调用过程中下列哪些选项可以作为实参()。

A、8,9 B、8.0f,9 C、8,9.0 D、8.0f,9.0

 

10,以下选项中哪些属于String类的方法()。

A、indexOf(); B、append(); C、substring(); D、concat();

 

 

三,填空题:(一题2分,共10分)

 1、java中的8个基本类型分别是 _byte_,_short_,_int_,_long_,_float_,_double_,_boolean_,_char_                                

 

2,String str=”我很高兴学习Java”;要求获取’学’字符,__str.chaAt(4)_____________;

  1. 已知类:Student,请创建一个学生对象____Student stu = new Student()___________。

4、JAVA数据类型有两种转换方式分别为:_   自动转换    ____、___  强制转换    ___

5、已知有程序如下:

public class Test{

public static void main(String argv[]){

  int  a  =  5;

  int  b  =  10;

  int  c  =  ++a;

int  d  =  b++;

System.out.println(“c:”+c+”  d:”+d);

}

}

请问此时  c   和  d 的值分别为:__6__、_10_    

 

四,程序题(一空4分,共20分)

1、已知有一个整数12345,使用while循环的方式将该数字输出为54321,请将下列代码补充完整:

public class Huiwen {

   public static void main(_String[]_args ) {

        int val = 12345;

        int r_digit ;

        System.out.print("反转后的整数是:");

        while(val>0){

         r_digit =val%10;

         System.out.print(r_digit);

         val = val/10;

        }   

}

}

 

 

 

猜你喜欢

转载自blog.csdn.net/qq_33449702/article/details/86666575
今日推荐