java基础语法练习题(第二章)

文章目录

  • 一、java基础语法(第二章)
    • 变量的类型转换
    • 变量作用域
    • 算数运算符
    • 赋值运算符
    • if条件语句
    • switch条件语句
    • while循环
    • for循环
    • 循环嵌套
    • 跳转语句(break)
    • 跳转语句(continue)
    • 方法的定义与使用
    • 数组的定义
    • 多维数组的定义与使用


一、java基础语法(第二章)

变量的类型转换

1、下列数据类型进行运算时,哪一个会发生自动类型提升( )
A、int+int
B、long+long
C、byte+byte
D、double+double
参考答案:C

byte型的变量在运算期间类型会自动提升为int型

2、下列数据类型中,哪种数据类型转为int类型需要进行强制转换()
A、byte
B、short
C、char
D、float
参考答案:D
3、请阅读下列的程序
public class Example01 {
public static void main(String[] args) {
int num = 127;
byte b = num;
System.out.println(b);
}
}
程序的运行结果是( )
A、编译报错
B、编译通过,执行输出127
C、编译通过,执行报错
D、以上选项均不正确

参考答案:A

变量作用域

4、下列关于变量作用域的说法中,正确的是( )
A、在main()方法中任何位置定义的变量,其作用域为整个main()方法。
B、代码块中定义的变量,在代码块外也是可以使用的。
C、变量的作用域为:从定义处开始,到变量所在代码块结束的位置。
D、变量的作用域不受代码块的限制。
参考答案:C

算数运算符

5、表达式3510/1000的运算结果为( )
A、3
B、3.51
C、3.510
D、4
参考答案:A
在进行除法运算的时候,当除数和被除数都为整数时,得到的结果也是一个整数,如果除法运算有小数参与,得到的结果会是一个小数。
6、表达式7%(-3)的运算结果为( )
A、-2
B、-1
C、2
D、1
参考答案:D
在进行取模(%)运算时,运算结果的正负取决于被模数(%左边的数)的符号,与模数(%右边的数)的符号无关。

赋值运算符

7、下列选项中,不属于赋值运算符的是( )
A、-=
B、=
C、==
D、*=
参考答案:C

=是赋值运算符,==是比较运算符

if条件语句

7、请阅读下面的程序片段
boolean b=true;
if(b=false) {
System.out.println(“a”);
} else if(b) {
System.out.println(b);
} else if(!b) {
System.out.println(“c”);
} else {
System.out.println(“d”);
}
下面选项中,哪一个是程序的执行结果( )
A、a
B、b
C、c
D、d
参考答案:C

解析:因为if(b=false) ,这里b赋值为false,因为 !b 代表非b , b是false , 非b就是真,所以执行:System.out.println(“c”);

8、下列关于条件语句的描述中,错误的是( )
A、if语句中的条件表达式是一个布尔值。
B、选择语句分为if条件语句和switch条件语句。
C、switch语句中的表达式只能是布尔类型的值。
D、switch语句只能针对某个表达式的值作出判断。
参考答案:C

switch条件语句

9、下列关于case关键字的说法中,错误的是( )
A、case关键字后面必须是常量
B、case关键字后面的break必须存在
C、case关键字后面的break可以没有
D、case关键字后面的值必须不一样
参考答案:B

while循环

10、请阅读下面的程序
class WhileDemo4 {
public static void main(String[] args) {
int n = 5;
while (n > 10) {
System.out.print(n);
n++;
}
}
}
下列选项中,哪一个是程序运行的结果( )
A、无输出
B、输出56789
C、死循环
D、编译错误
参考答案:A

11、请阅读下面的程序。
Class WhileDemo5 {
public static void main(String[] args) {
int n = 5;
while (n < 10) {
System.out.print(n);
n++;
}
}
}
下列选项中,哪一个是程序运行的结果( )
A、无输出
B、输出56789
C、死循环
D、编译错误
参考答案:B

12、请阅读下面的程序
public class Example {
public static void main(String[] args) {
int x = 1;
do {
x++;
} while (x <= 4);
System.out.println("x = " + x);
}
}
程序的运行结果是()
A、3
B、4
C、5
D、6
参考答案:C

for循环

13、请阅读下面的程序
public class Test {
public static void main(String[] args) {
int sum = 0;
for (int i = 1; i <= 100; i++) {
if (i % 2 == 0) {
continue;
}
sum += i;
}
System.out.println("sum = " + sum);
}
}
程序的运行结果是()
A、1050
B、2050
C、2500
D、以上答案都不对
参考答案:C

循环嵌套

14、请阅读下面的程序
public class Test {
public static void main(String[] args) {
int temp = 0;
for (int i = 1; i < 5; i++) {
for (int j = 0; j < i; j++) {
temp++;
}
}
System.out.println(temp);
}
}
下列选项中,哪一个是正确的运行结果( )
A、5
B、9
C、10
D、15
参考答案:C

跳转语句(break)

15、请阅读下面的程序
public class Test {
public static void main(String[] args) {
int x;
int y;
for (x = 1, y = 1; x <= 100; x++) {
if (y >= 20) {
break;
}
if (y % 3 == 1) {
y += 3;
continue;
}
y -= 5;
}
System.out.println(“x=” + x + “,y=” + y);
}
}
下列选项中,哪一个是程序的运行结果( )
A、x=8,y=22
B、x=22,y=8
C、x=3,y=0
D、x=0,y=3
参考答案:A

16、请阅读下面的程序
public class Test {
public static void main(String[] args) {
for(int x =0;x<5;x++)
{
if(x%2==0)
break;
System.out.print(x+” “);
}
}
}
下列选项中,哪一个是程序的运行结果( )
A、12345
B、024
C、13
D、不输出任何内容
参考答案:D

跳转语句(continue)

17、关于continue语句的使用范围,下列说法正确的是( )
A、continue语句可以在选择语句中使用
B、continue语句可以在条件语句中使用
C、continue语句可以在循环语句中使用
D、不输出任何内容
参考答案:C

18、请阅读下面的程序
public class Test {
public static void main(String[] args) {
for(int x = 0 ; x <=3 ; x++){
continue;
System.out.print(x%2+” “);
}
}
}
下列选项中,哪一个是程序的运行结果( )
A、0123
B、0121
C、012
D、编译失败
参考答案:D

方法的定义与使用

19、下列关于方法的描述中,正确的是( )
A、方法是对功能代码块的封装
B、当方法没有返回值时,返回值类型可以不写
C、当方法没有返回值时,不能有return语句
D、方法是不可以没有参数的
参考答案:A

20、请阅读下面的代码片段
public static int add(int a,int b) {
return a + b;
}
下列选项中,可以在main()方法中成功调用add()方法的是( )

A、int num = add(1.0,2.0);
B、int num = add(‘a’,‘b’);
C、int num = add(true,flase);
D、int num = add(“1”,“2”);
参考答案:B
解析:输出的是a+b的ASCII码

数组的定义

21、声明一个数组,【】_[ ] a = new String[]{};空格处应该填写的的内容为()
A、int
B、double
C、String
D、string
参考答案:C

22、下列关于数组最值的描述中,错误的是( )
A、要想求数组的最值必须先定义一个数组
B、在求数组最值时,初始时一定要将数组中的第一个元素的值赋给变量
C、求数组最值过程中,一定要对数组进行遍历
D、在求数组最大值时,使用变量记住每次比较后较大的那个值
参考答案:B

多维数组的定义与使用

23、下面代码中,哪一项是正确定义了一个3*4的二维数组( )
A、int[][]arr=newint[3][4]
B、int[][]arr=newint[3][]
C、int[][]arr=newint[][4]
D、int[][]arr={{1,2},{3,4,5},{6}}
参考答案:A

24、若int[][] arr= {{1,2,3}},则arr[0][1]的结果为( )
A、0
B、1
C、2
D、3
参考答案:C

24、下列选项中关于二维数组的定义,错误的是( )
A、int[][]arr=new int[][2]
B、int[][]arr=new int[1][2]
C、int[][]arr=new int[2][]
D、int[][]arr={{1},{2,3},{4,5,6}}

你可能感兴趣的:(java基础语法练习题,java)