Java基础第一阶段测试题
1. 在Java中,要向控制台打印输出“Welcome to Space!”并自动换行,可以实现此功能的语句是()。(选择一项)
A. System.print("Welcome to Space");
B. System.out.print("Welcome to Space");
C. System.out.println("Welcome to Space");
D. System.println("Welcome to Space");
2.在Java中,Scanner类提供从控制台获取键盘输入的功能,下列语句的()能够正确实例化Scanner类的对象,用于获取键盘输入的数据。(选择一项)
A、Scanner input = new Scanner(System.out);
B、Scanner input = new Scanner(System.in);
C、Scanner input = new Scanner(System);
D、Scanner input = new Scanner();
3. Java是面向对象的程序设计语言,关于面向对象程序设计的优点,下列说法正确的是()。(选择一项)
A、 便于在计算机程序中用类似的软件对象模拟现实世界中的实体。
B、 便于隐藏信息
C、 增加重用性
D、 以上全部是
4.给定某Java程序的main方法如下所示,该程序运行的结果是()。(选择一项)
public static void main(String[] args){
int i=0;
System.out.println(i++);
}
A、输出0
B、输出1
C、编译错误
D、运行时出现异常
5.变量命名规范说法正确的是( ) (选择一项)
A、 变量由字母、下划线、数字、$符号随意组成;
B、 变量不能以数字作为开头;
C、 A和a在java中是同一个变量;
D、 不同类型的变量,可以起相同的名字;
6.为一个boolean类型变量赋值时,可以使用( )方式 (选择一项)
A、 boolean = 1;
B、 boolean a = (9 >= 10);
C、 boolean a="真";
D、 boolean a = = false;
7.表达式(11+3*8)/4%3的值是( ) (选择一项)
A、 31
B、 0
C、 1
D、 2
8.下列说法正确的是( ) (选择一项)
A、 JAVA程序的main方法必须写在类里面
B、 JAVA程序中可以有多个main方法
C、 JAVA程序中类名必须与文件名一样
D、 JAVA程序的main方法中如果只有一条语句,可以不用{}(大括号)括起来
9.( )表达式不可以作为循环条件 (选择一项)
A、 i++;
B、 i>5;
C、 bEqual = str.equals("q");
D、 count = = i;
10.以下程序的运行结果是:( )(选择一项)
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
11.在Java中,程序调试是解决程序错误的工具和方法的总称,主要方法包括三个方面,其中不包括()。(选择一项)
A、使用System.out.println()输出语句验证变量值
B、设置断点
C、单步运行
D、观察变量
12.下列值不为true的表达式有( )。 (选择一项)
A、 "john" = = "john"
B、 "john".equals("john")
C、 "john" = "john"
D、 "john".equals(new String("john"))
13.下列输出结果是( ) (选择一项)
int a = 0
while ( a
switch(a){
case 0:
case 3 : a = a + 2;
case 1 :
case 2 : a = a + 3;
default : a = a + 5;
}
}
System.out.print ( a )
A、 0 B、 5 C、 10 D、 其他
14. 下面有关for循环的描述正确的是( )(选择一项)
A、 for循环体语句中,可以包含多条语句,但要用大括号括起来
B、 for循环只能用于循环次数已经确定的情况
C、 在for循环中,不能使用break语句跳出循环
D、 for循环是先执行循环体语句,后进行条件判断
15.在java中下列关于自动类型转换说法正确的是( ) (选择一项)
A、 基本数据类型和String相加结果一定是字符串型
B、 char类型和int类型相加结果一定是字符
C、 double类型可以自动转换为int
D、 char + int + double +"" 结果一定是double
16.在Java中下面代码是()条语句 (选择一项)
int i;i=123;
int j=0,k=0;
System.out.println(i+ ";" + ";" + j + " " + k);
A、 3 B、 4 C、 5 D、 6
17.以下( )代码,能够对数组正确初始化(或者是默认初始化)。(选择一项)
A、 int[] a;
B、 a = {1, 2, 3, 4, 5};
C、 int[] a = new int[5]{1, 2, 3, 4, 5};
D、 int[] a = new int[5];
18.score是一个整数数组,有五个元素,已经正确初始化并赋值,仔细阅读下面代码,程序运行结果是( ) (选择一项)
temp = score[0];
for (int index = 1;index
if (score[index]
temp = score[index];
}
}
A. 求最大数
B. 求最小数
C. 找到数组最后一个元素
D. 编译出错
19.下面关于数组的说法中,错误的是( )(选择两项)
A、 在类中声明一个整数数组作为成员变量,如果没有给它赋值,数值元素值为空
B、 数组可以在内存空间连续存储任意一组数据
C、 数组必须先声明,然后才能使用
D、 数组本身是一个对象
20.下列代码输出结果是( ) (选择一项)
int i = 10;
while ( i > 0 ){
i = i + 1;
if ( i = =10 ){ break; }
}
A. while循环执行10次
B. 死循环
C. 循环一次都不执行
D. 循环执行一次
21.执行下面代码结果( ) (选择一项)
for(int i=0;;){
System.out.println("这是 "+i);
break;
}
A、 语法错误,缺少表达式2和表达式3
B、 死循环
C、 程序什么都不输出
D、 输出:这是0
22.下面代码输出结果是()。 (选择一项)
int i=0,s=0;
do{
if (i%2 = = 0 ){
i++;
continue;
}
i++;
s = s + i;
} while (i<7);
System.out.println(s);
A、 16 B、 12 C、 28 D、 21
23.下列语句序列执行后,k 的值是。 ( ) (选择一项)
int i=4,j=5,k=9,m=5;
if( i>j || m
else k--;
A. 5 B. 10 C. 8 D. 9
24.下列语句序列执行后,k 的值是 ( )(选择一项)
int i=10, j=18, k=30;
switch( j - i )
{
case 8 : k++;
case 9 : k+=2;
case 10: k+=3;
default : k/=j;
}
25.设int 型变量 a、b,float 型变量 x、y,char 型变量 ch 均已正确定义并赋值,正确的switch语句是 ( ) (选择一项)
A. switch (x + y) { ...... }
B. switch ( ch + 1 ) { ...... }
C. switch ch { ...... }
D. switch ( a + b ); { ...... }
A.31 B. 32 C. 2 D. 33
26.在Java中,下面()语句能正确通过编译(选择二项)
A. System.out.println(1+l);
B. char i=2+'2';
System.out.println(i);
C. String s="on"+'one';
D. int b=255.0;
27.若a和b均是整型变量并已正确赋值,正确的switch语句是 ( ) (选择二项)
A. switch(a+b); { ...... }
B. switch( a+b*3.0 ) { ...... }
C. switch a { ...... }
D. switch ( a%b ) { ...... }
28.下列语句序列执行后,r 的值是 ( )
char ch='8'; int r=10;
switch( ch+1 ) {
case '7': r=r+3;
case '8': r=r+5;
case '9': r=r+6; break;
default: r=r+8;
}
29.下列语句序列执行后,m 的值是 ( ) (选择一项)
int a=10, b=3, m=5;
if( a==b ) m+=a;
else m=++a*m;
A. 15 B. 50 C. 55 D. 5
A. 13 B. 15 C. 16 D. 18
30.下列语句序列执行后,k 的值是 ( ) (选择一项)
int x=6, y=10, k=5;
switch( x%y ) {
case 0: k=x*y;
case 6: k=x/y;
case 12: k=x-y;
default: k=x*y-x;
}
A. 60 B. 5 C. 0 D. 54
31.下列语句序列执行后,j 的值是 ( ) (选择一项)
int j=1;
for( int i=5; i>0; i - =2 )
j*=i;
A. 15 B. 1 C. 60 D. 0
32.以下for循环的执行次数是 ( )(选择一项)
for(int x=0;(x==0)&&(x<4);x++);
A.无限次 B.一次 C.执行4次 D.执行3次
33.下列语句序列执行后,i 的值是 ( )(选择一项)
int s=1,i=1;
while( i<=4 )
{s*=i;i++;}
A. 6 B. 4 C. 24 D. 5
34.下列语句序列执行后,j 的值是 ( )(选择一项)
int j=2;
for( int i=7; i>0; i-=2 )
j*=2;
A. 15 B. 1 C. 60 D. 32
35.以下由 for 语句构成的循环执行的次数是 ( ) (选择一项)
for ( int i = 0; true i++)
A.有语法错,不能执行 B.无限次 C.执行1次 D.一次也不执行
36.下列语句序列执行后,j 的值是 ( )(选择一项)
int j=8, i=6;
while( i >4 )
i-=2; - -j;
A.5 B. 6 C. 7 D. 8
37.下列语句序列执行后,r 的值是 ( ) (选择一项)
char ch='A';
int r=6;
switch( ch+5 ) {
case 'A': r=r+3;
case 'B': r=r+5;
case 'C': r-=6; break;
default : r/=2;
}
A. 11 B. 3 C. 2 D. 9
38.下列语句序列执行后,i的值是 ( ) (选择一项)
int i=10;
do {
i/=2;
} while( i>1 );
A. 1 B. 5 C. 2 D. 0
39. 若有循环:( )(选择一项)
int x=5,y=20;
do {
y-=x; x+=2;
}while(x
则循环体将被执行。
A. 2次 B. 1次 C. 0次 D. 3次
40.以下由do-while语句构成的循环执行的次数是 ( ) (选择一项)
int m = 8;
do {
++m;
} while ( m
A.一次也不执行 B.执行1次 C.8次 D.有语法错,不能执行
41.下列语句序列执行后,i的值是 ( ) (选择一项)
int i=10;
do {
i/=2;
} while( i--> 1 );
A. 1 B. 5 C. 2 D. -1
42.给定如下Java代码片断,编译运行时的结果是()。(选择一项)
int i=2;
switch(i){
default:
System.out.println("default");
case 0:
System.out.println("zero");
break;
case 1:
System.out.println("one");
case 2:
System.out.println("two");
}
a) 输出default
b) 输出default
zero
c) 出错,default的位置不符合switch结构的语法结构
d) 输出two
43. 在Java 语言中,以下()代码会引起编译错误。(选择二项)
A. float[ ] f1 = new float[ ] ;
B. float[ ] f2 = new float[ 3 ] ;
C. float f3[ ] ={1.0 , 2.0 , 3.0 } ;
D. float f4[ ] = new float[ ]{ 1.0f , 2.Of , 3.0f } ;
44.给定如下Java程序,编译运行时,将在()语句出现错误。(选择一项)
public class Test{
public static void main(String args[]){
int i=0; //a语句
for(;i<10;i++){ //b语句
if(i>5){
String test="hello"; //c语句
}
}
System.out.println(test); //d语句
}
}
A. a B.b C. c D. D
45.分析下面的Java程序,编译运行的结果是()。(选择一项)
public class B{
public static void main(String[] args){
String s="y";
System.out.println(s+1+2);
System.out.println(1+2+s);
}
}
A. 输出:y12
3y
B. 输出:y12
12y
C. 输出:y3
3y
D. 程序编译出错
46.分析如下JAVA代码片段,输出结果为()。(选择一项)
int price = 10;
int number = 0;
int money = 0;
for(int i=0;i<2;i++) {
number ++;
-- price;
money += number * price;
}
System.out.println(money);
A.25 B. 28 C. 31 D. 29
47.编译并运行下面的Java代码,( )会出现在输出结果中.(选择二项)
public class Test{
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.println("i=" + i + " j=" + j);
}
}
}
}
A. i=0j=3
B. i=0j=0
C. i=2j=2
D. i=0j=2
48.分析下面的JAVA代码片段,编译运行后的输出结果是( );(选择一项)
for(int i=0;i<6;i++){
int k=++i;
while(k<5){
System.out.print(i);
break;
}
}
A. 024
B. 02
C. 123
D. 13
4
49.分析下面的java源程序,编译后的运行结果是()。(选择一项)
import java.util.*;
public class Test{
public static void main(String[] args){
int[] numbers = new int[]{2,1,3};
Arrays.sort(numbers);
for(int index=1;index<=numbers.length;index++){
System.out.print(numbers[index]);
}
}
}
A. 输出:21
B. 输出:23
C. 输出:13
D. 行时出现越界错误
50.给定某java程序片断,如下:(选择一项)
int i=1;
int j=i++; j=1
if((i>++j)&&(i++==j)){
i+=j;
}
System.out.println(i);
该程序运行后,i的输出结果是()。
A. 1
B. 2
C. 3
D. 4