java训练题一答案

java训练题一答案
java训练题一答案

训练题一

一、单选题

1.下列选项中,哪一项不属于Java语言的简单数据类型( B )

A. 整数型

B. 数组

C. 字符型

D. 浮点型

2.如果在编译Java程序时,编译结果报告说找不到编译的代码,通常的错误不是如下的哪一项?( A )

A. 没有import相应的包

B. 文件名拼写错误

C. 未加.java后缀

D. 源文件不在当前目录下

3.以下的选项中能正确表示Java语言中的一个整型常量的是( B )

A. 435.

B. –34

C. 34,000

D. 4 5 6

4.现在一个变量为boolean b1; ,下面赋值语句中正确的是( A )

A. b1=true;

B. b1=True;

C. b1=“true”;

D. b1=0;

5.现在2个char类型的变量a1=‘a’,a2=2;,当执行a1=(char)(a1+a2);语句之后,a1的值应该是( B )

A. ‘a’

B. ‘c’

C. 12

D. 语句在编译时出错

6.下列哪一个是表达式1+2+“aa”+3的值是( B )

A. “12aa3”

B. “3aa3”

C. “12aa”

D. “aa3”

7.执行以下列程序段之后,变量n的值为( A )

public class Test7{

public static void main(String[] args)

{ int y=2, z=3, n=4;

n=n+-y*z/n;

System.out.println(n);

}

}

A. 3

B. –1

C. –12

D. –3

8.执行下列代码段之后,变量z的值为( D )

public class Test8{

public static void main(String[] args)

{ int x=2, y=3, z=4;

z-=--y-x--;

System.out.println(z);

}

}

A. 1

B. 2

C. 3

D. 4

9.对下列表达式值的判断正确的一个是( C )

A. 23<43的值为false

B. 18>=19的值为true

C. 12<=12的值为true

D. 66!=22的值为false

10.下列关于equals()方法和==运算符的说法,不正确的一个是( C )

A.equals()方法可以用来比较复合数据类型的数值是否相等

B.==运算符可以用来比较简单数据类型的数据值是否相等

C.==运算符和equals()方法的功能一样,可以相互替换

D.==运算符和equals()方法的功能不完全一样,不可以相互替换

11.表达式(12==0)&&(1/0<1)的值为( B )

A. true

B. false

C. 0

D. 运行时抛出异常

12.能构成多分支的语句是( C )

A. for语句

B. while语句

C. switch语句

D. do-while语句

13.下程序的输出结果是( A )

public class ex13{

public static void main(String[] args)

{ for(int cnt=0; cnt<10; cnt++)

{ if(cnt==5) break;

System.out.print(cnt);

}

}

}

A. 01234

B. 6789

C. 0123456789

D. 5

14.下列程序执行后,输出的结果是( A )

public class ex14{

public static void main(String[] args)

{ int a=10;

if(a<10||a>10)

System.out.println(“a<>10”);

else

System.out.println(“a=10”);

}

}

A. a=10

B. a<>10

C. a>10

D. a<10

15.执行下开程序之后,输出的结果为( C )

public class ex15 {

public static void main(String[] args)

{ int a=0;

label: for(; a<4; a++)

{ for(int j=0; j<2; j++)

{ if(a==2) break label;

System.out.print(a*2+j+“”);

}

System.out.println(“a=”+a);

}

}

}

A. 0 1 a=0

B. 0 1 a=1

2 3 a=2 2 3 a=2

C. 0 1 a=0

D. 1 2 a=0

2 3 a=1 3 4 a=1

16.下列程序的执行结果是( B )

public class ex16{

public static void main(String[] args)

{ int j=2, i=8;

while(j<--i)

{ for(int k=0; k<4; k++)

j++;

}

System.out.println(j);

}

}

A. 10

B. 6

C. 4

D. 2

17. 下列程序的执行结果是( C )

public class ex17{

public static void main(String[] args)

{ int i=0, j=100;

while(j>=0)

{ if(j%3==0)

i+=j;

j--;

}

System.out.println(i)

}

}

A. 5050

B. 2500

C. 1683

D. 1717

18.下列哪一个不是分支语句( D )

A. switch语句

B. if-else语句

C. if语句

D. break语句

19. 下列程序的执行结果是( D )

public class ex19{

public static void main(String[] args)

{ int sum=0;

for(int i=1; i<=50; i+=5)

sum+=i;

System.out.println(sum);

}

}

A. 50

B. 200

C. 250

D. 235

20.下列程序的执行结果是( D )

public class ex20{

public static void main(String []args)

{ int i1=12, i2=5;

switch(++i1)

{ case 11: i2=i2<<1;

case 12: i2=i2<<2;

case 13: i2<<3; break;

default: ;

}

System.out.println(i2);

}

}

A. 5

B. 10

C. 20

D. 40

21. 下列程序的执行结果是( A )

public class ex21{

public static void main(String []args)

{ String str=“Hello,”;

str=str+”Guys!”;

System.out.println(str);

}

}

A. Hello,Guys!

B. Hello,

C. Guys!

D. 编译不通过

22.下面哪个可以作为命名Java中的类名?( B )

A.class

B.¥8$

C. 3s

D.String

23. 哪一个运算符返回除法运算的余数?( B )

A. /

B. %

C. mod

D.?

24.若有如下定义: int i=8; String s=“123”; 则下面哪个描述是不正确的?( C )

A.执行i=Integer.parseInt(s); System.out.println(“i=”+i);则输出结果为i=123

B.若执行s=String.valueOf(i); System.out.println(“s=”+s);则输出结果为s=8

C.若执行s=Int.toString(i); System.out.println(“s=”+s);则输出结果为s=8

D.执行s=new String(“567”);System.out.println(“s=”+s);则输出结果为:s=567

25. 有关数组的定义正确的是( C )

A. int a[3];

B. int[3] a;

C. int[] a;

D. int a();

26. 在Java中,能表示条件表达式为“真”的是( A )

A. true

B. 1

C. 非0的任何数

D. false

27.下列程序的执行结果是( C )

public class ex27{

public static void main(String[] args)

{ String s1=“abc”+“def”;

String s2=new String(s1);

if(s1==s2)

System.out.println(“s1==s2”);

if(s1.equals(s2))

System.out.println(“s1 equals s2”);

}

}

A. 不输出任何结果

B. s1==s2

C. s1 equals s2

D. s1==s2

s1 equals s2

28. 下面说法正确的是(C)

A.Java程序的源文件名称与主类(公共类)的名称相同,后缀可以是以.java或.txt

等。

B.JDK的编译命令是java。

C.一个Java源程序编译后可能产生几个字节码文件。

D.在命令运行编译好的字节码文件,只需在命令行直接键入程序名即可运行该

程序。

29. 下面的数据类型(D)是float型。

A. 33.8

B. 129

C. 89L

D. 8.6F

30.定义整型变量: int n=456; ,表达式的值不为5的是(D)

A. n/10%10

B. (n-n/100*100)/10

C. n%10-1

D. n/10

31. 下列方法x的定义中,正确的是(A)

A. int x(){ char ch=?a?; return (int)ch; }

B. void x {…}

C. int x(int i){ return (double)(i+10); }

D. x(int a){ return a; }

32. 设有定义语句int a[]={66,88,99}; 则以下对此语句叙述错误的是(C)

A. 定义了一个名为a的一维数组

B. a数组有3个元素

C. a数组的下标为1~3

D. 数组中的每个元素是整型

33. 下面是在命令行运行Java应用程序A:

java A the first snow came.怎么才能在

main(String args[])方法中访问单词“first”(B)

A. args[0]

B. args[1]

C. args[2] args[3]

34. 以下语句执行后输出的结果是(B)

String s=new String(“hello,Java!”);

System.out.println(s.length());

A. 10

B. 11

C. 9

D. 15

35.给出下面程序的代码:

byte[] a1, a2[];

byte a3[][];

byte [][]a4;

下列数组操作语句中哪一个是不正确的?( A )

A. a2=a1;

B. a2=a3;

C. a2=a4;

D. a3=a4;

二、填空题

1.在Java语言中的变量,必须先声明后使用,必须进行初始化的变量是局部变量。

2.char类型的数据可以表示的字符数一共为65536。

3.Java中的字符使用的是16位的Unicode编码。字符数据类型的包装类是Character。

4.在Java语言中,将位数多的数据类型向位数少的数据类型转换时,只能采用强制类型转换。

5.在Java语言中,复合数据类型有: 类、接口和数组。

6.在不产生溢出的情况下左移运算相当于乘法运算。

7.表达式7|12&55^~23的值为-17。

8.若a、b为int型变量,并且已分别赋值为5和10,则表达式(a++)+(++b)+a*b 的值是82。

9.在Java语言中,用来分配内存的运算符是new。

10.结构化程序设计的三种基本流程控制结构是:顺序、分支和循环。

11.一个for循环完全等同于一个while循环。

12.case子句中的值必须是常量,并且互不相同。

13.每一个else子句都必须和一个距离它最近的if子句相对应。

14.顺序执行以下两个语句的输出结果是4。

String str=“等级考试”;

System.out.println(str.length());

15.Java中的方法的参数传递是传值调用,而不是地址调用。

16.开发运行Java程序的一般步骤是: 源程序编辑、生成字节码和解释执行。

17. Java源程序文件和字节码文件的扩展名分别为.java和.class 。

18. final保留字用于定义常值变量,声明该变量以后不会改变。

19. 跳转语句包括return语句、break语句和continue语句。

20.当方法有返回值时,必须在该方法体内使用return语句。

21. 表达式9*4/-5%5的值为-2 。

22.字符串分为两大类,一类是字符串常量,使用String类的对象表示;另一类是字符串变量,使用StringBuffer类的对象表示。

三、简答题

1.改正下面程序的错误,使之能编译运行。

public class A

{

String s=“java”;

public static void main(String[] args)

{

System.out.println(“s=”+s);

}

}

答案: 字符串变量s要定义为static。

2.阅读下面的程序段,回答以下问题。

char c=…A?;

for(int i=1; i<=5; i++)

{ System.out.print(c++);

//(2)问的代码加在此处。

}

(1)写出程序段的输出结果。

(2)如果将程序段的for语句的最后加上语句:

if(i= =3) break;

写出程序输出结果。

答案: (1)运行结果为:ABCDE

(2)运行结果为:ABC

3. 阅读程序,回答问题。

public class A

{ public static void main(String[] args)

{ String str[]=new String[3];

Str[2]=args[3];

System.out.println(str[2]);

}

}

(1)程序能否编译通过?

(2)编译后运行程序,在命令行键入: java A 1 2 3,程序运行结果如何?

答案: (1)能

(2)运行时程序抛出ArrayIndexOutOfBoundsExcetpion异常,因为参数

数组的最大下标值是2,所以args[3]不能访问。

4. float型float f=2.9;是否正确?

答案:不正确。精度不准确, 应该用强制类型转换,如下所示:float f=(float)2.9;

或float f=2.9f;

5.char型变量中能不能存贮一个中文汉字?为什么?

答案: 是能够存贮一个中文的,因为java中以unicode编码,一个char占16位,所以放一个中文是没问题的。

6. JA V A的基本数据类型有哪些? String 是不是基本数据类型?

答案: Java 有8种基本数据类型: byte、 int、 short、 long、double 、 float、 boolean、 char。

String 不是基本数据类型.它定义的为对象。

四、编程题

1.使用Math类中的静态方法,随机产生3个67~295的整数(包括67和295)并

找出数值居中的数,例如,100、225和200,应该输出200。

(提示:random()方法是随机产生一个大于等于0.0而小于1.0的double型数值,所以要产生一个a~b(包括a和b)的整数,可以按下列公式套用:

int i=(int)(Math.random()*(b-a+1))+a; )

程序如下:

class One

{

public static void main(String[] args)

{

int num1,num2,num3,mid=0;

num1=(int)(Math.random()*(295-67+1))+67;

num2=(int)(Math.random()*(295-67+1))+67;

num3=(int)(Math.random()*(295-67+1))+67;

if(num1>=num2&&num1<=num3||num1>=num3&&num1<=num2)

mid=num1;

if(num2>=num1&&num2<=num3||num2>=num3&&num2<=num1)

mid=num2;

if(num3>=num1&&num3<=num2||num3>=num2&&num3<=num1)

mid=num3;

System.out.println("num1="+num1+"\tnum2="+num2+"\tnum3="+num3);

System.out.println("数值居中的数为:"+mid);

}

}

2.买彩票中大奖:用户键入1~20的一个数,然后程序随机产生3个1~20不相

同的数字,分别代表一等奖、二等奖和三等奖数字。最后进行比较,并输出用户是否中奖的的信息。

程序如下:

import javax.swing.*;

class Two

{

public static void main(String[] args)

{

int n1;//n1代表一等奖的数

int n2;//n2代表二等奖的数

int n3;//n3代表三等奖的数

int n;//你购买的数字

n1=(int)(Math.random()*(20-1+1))+1;

do

{

n2=(int)(Math.random()*(20-1+1))+1;

}while(n1==n2);//确保n1不等于n2

do

{

n3=(int)(Math.random()*(20-1+1))+1;

}while(n3==n2||n3==n1);//确保n3不等于n1和n2

String s=JOptionPane.showInputDialog("请输入你要购买的数字(1-20)");

n=Integer.parseInt(s);

System.out.println("您购买的数字是: "+n);

if(n==n1)

System.out.println("恭喜您,中了一等奖!");

else if(n==n2)

System.out.println("恭喜您,中了二等奖!");

else if(n==n3)

System.out.println("恭喜您,中了三等奖!");

else

System.out.println("谢谢您的购买,下次好运!");

System.out.println("\n一等奖的号码是: "+n1);

System.out.println("二等奖的号码是: "+n2);

System.out.println("三等奖的号码是: "+n3);

System.exit(0);//正常退出程序

}

}

3.人民币取法:有面值为壹元、贰元和伍元的人民币若干,从中取出20张使其

总值为60元,问有多少种取法?每种取法中的壹元、贰元和伍元人民币各有多少张?

程序如下:

class Three

{

public static void main(String[] args)

{

int n1,n2,n5,n=0;

/*n1,n2,n5分别为壹元,贰元和伍元的张数;n为总的取法种数*/

for(n1=0;n1<=20;n1++)

for(n2=0;n2<=20;n2++)

{

n5=20-n1-n2;

if(n1+n2*2+n5*5==60)

{

n++;

System.out.print("第"+n+"种取法为:\t"+"壹元="+n1+"张\t"+"贰元="+n2+"张\t"+"伍元="+n5+"张");

System.out.println();

}

}

System.out.println("总的取法数为:"+n+"种");

}

}

4.某学校有三名同学参加数学竞赛,共10道题,答对一道得10分,答错一道

题扣3分。这三名同学都回答了所有的问题,小明得了87分,王红得了74分,张凯得了48分,他们三人共答对了多少道题?

程序如下:

class Four

{

public static void main(String[] args)

{

int score,xiaoMing=0,wangHong=0,zhangKai=0;

for(int ok=1;ok<=10;ok++)

{

score=ok*10-(10-ok)*3;

if(score==87)

xiaoMing=ok;

}

for(int ok=1;ok<=10;ok++)

{

score=ok*10-(10-ok)*3;

if(score==74)

wangHong=ok;

}

for(int ok=1;ok<=10;ok++)

{

score=ok*10-(10-ok)*3;

if(score==48)

zhangKai=ok;

}

System.out.println("三人答对总题数为:"+(xiaoMing+zhangKai+wangHong));

}

}

5.投票选佳丽:假设一共有10位佳丽,共有50个人参加投票,然后统计并显

示每个佳丽最终获得的票数。

程序如下:

import javax.swing.*;

class Five

{

public static void main(String[] args)

{

int miss[]=new int[10];

String s="";

for(int n=1;n<=50;n++)

{

int index;

s=JOptionPane.showInputDialog("请第"+n+"个人键入佳丽的编号(1-10)");

index=Integer.parseInt(s);

miss[index-1]++;

}

System.out.println();

System.out.println("下面公布票数");

for(int i=1;i<=10;i++)

System.out.println(i+"号佳丽的票数是: "+miss[i-1]);

System.exit(0);

}

};

以上方法改善后如下:

import java.io.*;

import javax.swing.*;

class Five2

{

public static void main(String[] args)

{

int miss[]=new int[10];

String s="";

for(int n=1;n<=50;n++)

{

int index;

while(true)

{

s=JOptionPane.showInputDialog("请第"+n+"个人键入佳丽的编号(1-10)");

try{

if(s!=null)

{

index=Integer.parseInt(s);

break;

}

}

catch(NumberFormatException e)

{

JOptionPane.showMessageDialog(null,"你输入佳丽号不是整数","Error",JOptionPane.ERROR_MESSAGE);

}

}

if(index>=1&&index<=10)

miss[index-1]++;

}

System.out.println();

System.out.println("下面公布票数");

for(int i=1;i<=10;i++)

System.out.println(i+"号佳丽的票数是: "+miss[i-1]);

System.exit(0);

}

};

JAVA复习题库及答案

第一题单项选择题 1、在下列说法中,选出最正确的一项是(A )。 A、Java 语言是以类为程序的基本单位的 B、Java 语言是不区分大小写的 C、多行注释语句必须以//开始 D、在Java 语言中,类的源文件名和该类名可以不相同 2、下列选项中不属于Java 虚拟机的执行特点的一项是(D )。 A、异常处理 B、多线程 C、动态链接 D、简单易学 3、下列选项中,属丁JVM 执行过程中的特点的一项是( C )。 A、编译执行 B、多进程 C、异常处理 D、静态链接 4、在Java 语言中,那一个是最基本的元素?( C ) A、方法 B、包 C、对象 D、接口 5、如果有2 个类A 和B,A 类基于B 类,则下列描述中正确的一个是( B )。 A、这2 个类都是子类或者超类 B、A 是B 超类的子类 C、B 是A 超类的子类 D、这2 个类郡是对方的子类 6、使用如下哪个保留字可以使只有在定义该类的包中的其他类才能访问该类?(D ) A、abstract B、private (本类) C、protected(本包及其他包的子类) D、不使用保留字 7、编译一个定义了3 个类的Java 源文件后,会产生多少个字符码文件,扩展名是什么?(D ) A、13 个字节码文件,扩展名是.class B、1 个字节码文件,扩展名是.class C、3 个字节码文件,扩展名是.java D、3 个字节码文件,扩展名是.class 8、下列关于Java 程序结构的描述中,不正确的一项是( C )。 A、一个Java 源文件中可以包括一个package 语句 B、一个Java 源文件中可以包括多个类定义,但是只能有一个public 类 C、一个Java 源文件中可以有多个public 类 D、源文件名与程序类名必须一致 9、下列说法正确的一项是( C )。 A、java.1ang.Integer 是接口 B、java.1ang.Runnable 是类 C、Doulble 对象在iava.1ang 包中 D、Double 对象在java.1ang.Object 包中 10、以下关于面向对象概念的描述中,不正确的一项是( B )。 A、在现实生活中,对象是指客观世界的实体

java 试题练习题(第9 套)

—— 学年第 学期 《 Java 程序设计 》课程试题 课程号: √ 考试 □ A 卷 √ 闭卷 □ 考查 □ B 卷 □ 开卷 一、单项选择题(20题;每题2分,共40分) 1、下面选项中,___不可以用作变量名的首字符。 A )字母 B )下划线(_) C )数字 D )美元符号(¥) 答案:C (难度系数C )知识点:变量 2、下面语句中,____不会出现编译警告或错误。 A )float f=1.3; B )char c=”a”; C )byte b=25; D )boolean b=null; 答案:C (难度系数B )知识点:赋值相容 3、下列叙述正确的是___。 A )final 类可以有子类 B )abstract 类中只可以有 abstract 方法 C )abstract 类上可以有非abstract 方法,但该方法不可以用final 修饰 D )不可以同时用final 和abstract 修饰一个方法 答案:D (难度系数B ) 知识点:抽象类,抽象方法 4、创建一个标识有“关闭”按钮的语句是___。 A ) TextField b = new TextField(“关闭”); B ) Label b = new Label(“关闭”); C ) Checkbox b = new Checkbox(“关闭”); D ) Button b = new Button(“关闭”); 答案:D (难度系数C ) 知识点:GUI 编程 5、在编写异常处理的Java 程序中,每个catch 语句块都应该与___语句块对应,使得用该语句块来启动Java 的异常处理机制。 班 级 : 姓名: 学号: 试题共 页 加 白纸 张 密 封 线

JAVA练习题含答案-answers to practice 2

Multiple Choice 1)Which operator is used to concatenate two strings? (a)+ (b)– (c)* (d)/ Answer: A (see page 35) 2)Which operator returns the remainder of integer division? (a)% (b)/ (c)* (d)none of the above Answer: A (see page 26) 3)What is the value of the variable c in the statements that follow? String phrase = "Make hay while the sun is shining."; char c = phrase.charAt(10); (a)w (b)h (c)i (d)None of the above Answer: B (see page 40) 4)The escape sequence the represents the new-line character is: (a)\r (b)\t (c)\n (d)\\ Answer: C (see page 43) 5)The syntax that declares a Java named constant named SALES_TAX is: (a)double SALES_TAX = 7.50; (b)public double SALES_TAX = 7.50; (c)public static double SALES_TAX = 7.50; (d)public static final double SALES_TAX = 7.50; Answer: D (see page 47)

Java基础测试题(答案)

1. 有以下程序片段,下列哪个选项不能插入到行1。( D ) 1. 2.public class Interesting{ 3.//do sth 4. } (只能有一个public修饰的class) A、import java.awt.*; B、package mypackage; C、class OtherClass{ } D、public class MyClass{ } 2. 以下哪项是接口的正确定义?( B D ) A、interface B { void print(){};} (接口里的方法都是抽象的,不能有方法体) B、abstract interface B { void print() ;} C、abstract interface B extends A1,A2 //A1、A2为已定义的接口 { abstract void print(){ };} (同上) D、interface B { void print();} 1.接口可以声明为public(公共)或默认的访问权限。接口隐含表明是抽象的(abstract)的。 2.接口的方法默认即为public(公共)且是abstract(抽象)的. 3.接口中的变量默认即为public(公共), static(静态) and final(最终的)。 接口声明编译器如何解释呢 public interface Searchable {}public abstract interface Searchable {} abstract interface Searchable {}abstract interface Searchable {} interface Searchable {}abstract interface Searchable {}

java基础测试题及答案

一、选择题(每题2分,共40分) 1、下面哪个是Java语言中正确的标识符( C ) A、3com B、import C、that D、this 2、下面哪个语句(初始化数组)是不正确的:( B) A.int x[] = {1,2,3}; B.int x[3] = {1,2,3}; C.int[] x = {1,2,3}; D.int x[] = new int[]{1,2,3}; 3、下述概念中不属于面向对象方法的是( D )。 A.对象、消息 B.继承、多态 C.类、封装 D.过程调用 4、下面的代码段中,执行之后i 和j 的值是什么? ( B ) int i = 1; int j; j = i++*2+3*--i; A.1, 2 B.1, 5 C. 2, 1 D. 2, 2 5、下面哪条语句把方法声明为抽象的公共方法?( B ) A.public abstract method(); B.public abstract void method(); C.public abstract void method(){} D.public void method() extends abstract; 6、下面关于java中类的说法哪个是不正确的?( C ) A.类体中只能有变量定义和成员方法的定义,不能有其他语句。 B.构造函数是类中的特殊方法。 C.类一定要声明为public的,才可以执行。 D.一个java文件中可以有多个class定义。 7、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( C ) class A { int i; static String s; void method1() { } static void method2() { } } A、; B、(); C、(); D、() 8、容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小 的变化而改变? ( B ) A、 CardLayout B、 FlowLayout C、 BorderLayout D、 GridLayout 9、下列哪个用户图形界面组件在软件安装程序中是常见的? ( C ) A.滑块 B.进度条 C.按钮 D.标签

JAVA入门练习50题(含答案)

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? //这是一个菲波拉契数列问题 public class lianxi01 { public static void main(String[] args) { System.out.println("第1个月的兔子对数: 1"); System.out.println("第2个月的兔子对数: 1"); int f1 = 1, f2 = 1, f, M=24; for(int i=3; i<=M; i++) { f = f2; f2 = f1 + f2; f1 = f; System.out.println("第" + i +"个月的兔子对数: "+f2); } } } 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。 public class lianxi02 { public static void main(String[] args) { int count = 0; for(int i=101; i<200; i+=2) { boolean b = false; for(int j=2; j<=Math.sqrt(i); j++) { if(i % j == 0) { b = false; break; } else { b = true; } } if(b == true) {count ++;System.out.println(i );} } System.out.println( "素数个数是: " + count); } }

JAVA测试题(三套含答案)

1.在单一文件中import、class和package的正确出现顺序是:A A.package, import, class B.class, import, package C.import, package, class D.package, class, import 2.public static void main方法的参数描述是:A,D A.String args[] B.Strings args[] C.String args D.String []args 3.下面哪行代码会在编译的时候出现错误或警告:A,B,C,D A.float f=; B.char c="a"; C.byte b=257; D.boolean b=null; E.int i=10; 4. 编译,运行下列代码后的结果是:D public class Test { public static void main (String args []) { int age; age = age + 1; "The age is " + age); } } A.编译,运行后没有输出 B.编译,运行后输出:The age is 1 C.能通过编译,但运行时产生错误 D.不能通过编译 4.下面那些关键字不是JAVA的关键字B A if B then C goto D while E case 5.下面那些不是合法的变量定义:A,F C. _whatavariable D. _3_

6.内部数据类型byte的取值范围是B - 65, 535 B.(–128) – 127 C.(–32,768) – 32,767 D.(–256) – 255 7.下列哪些表达式返回true AB A."john" == "john" B."john".equals("john") C."john" = "john" D."john".equals(new Button("john")) 8.声明公用的abstract方法的正确格式是A A.public abstract void add(); B.public abstract void add() {} C.public abstract add(); D.public virtual add(); 9.下面的代码能打印出的结果为:C int i=1; switch (i) { case 0: "zero"); break; case 1: "one"); case 2: "two"); default: "default"); } B.one, default C.one, two, default D.default 10.下面的代码能打印出的结果为:B int i=9; switch (i) { default: "default"); case 0:

java基础笔试测试题与答案

Java 一章至五章考试 一. 填空题(8 分) 1. 面向对象的三大原则是( 封装),( 继承) 和( 多态).2 分 2. 如果想在对象实例化的同时就初始化成员属性,则使用( 构造函数).2 分 3. ( 实体) 方法和( 构造) 方法不能修饰为abstract ?2分 二.选择题(60 分) 1) 在Java 语言中,下列(a,d )是不满足命名规范的变量名。(选择二项) a) 姓名 b) $Name c) _instanceof d) instanceof 2) 下列Java 代码片段的输出结果是( a ) 。 char c='a'; int i=c; float f=i; byte b=(byte)c; System.out.println(c+","+i+","+f+","+b); a) 编译错误 b) a,97,97,97 c) a,97,97.0,97 d) a,97,97.0f,97 3) 下列Java 代码中,空白处的代码是(b,c )。( 选择两项) public interface Fee{ public float calLabFee(float unitPrice, float time); } public class FeeImpl implements Fee { public float calLabFee(float unitPrice, float time){ return unitPrice * time; } } public class FeeInterfaceTest { public static void main(String[] args){ ________________ Float labFee = fee.calLabFee(400.00,5); } }

Java练习题及答案

Java 练习题答案 一、填空 1、对象的状态和行为是对象的主要属性;前者对应类的变 量,行为又称为对象的操作,对应着类的方法。类的定义包括变量声明和方法声明。 2、要嵌入在HTML文件中运行的程序是Java Applet (Java Application 、Java Applet )。 3、安装JDK后,Java 开发工具在Bin 目录。 4、声明接口的保留字是interface 。 5、类的声明“ public class Test extends Applet implements Runable{} ” 中,定义的类名是Test ,其父类是Applet ;实现了Runable 接口。这个类的源程序必须保存为Test.java (写出包括扩展名的文件名)。 6、一个完整的Java 应用程序由一个或多个类组成;其中Java Application 至少有一个主类,这个类中包含一个名为main 的方法 7、JDK下解释执行Java 的程序是java.exe 。 8、语句如下: int[] c1=int[10]; int[] c2={1,2,3,4,5,6,7,8,9,0}; 数组c1 中的元素有10 个;c2 中的元素有10 个; 已初始化赋 值的是c2 (c1 c2 )。 9、执行完下列程序后i 的值为5

int i=0; while(i<5) { i++; 10、运行下列程序段后,结果 c 的取值为120 int a = 100, b = 20,c; char oper ='+'; switch(oper) { case '+': c = a+b; break; case '-': c = a - b; break; default: c = a * b; break; } 11、为了能使用Java 中已提供的类,我们需要用import 语句来引入所需要的类。语句import java.io.* ;中引入了java.io 包的所有类。 二、选择题 1、属于访问控制的关键字是( D )。 A、static B 、final C、abstract D 、private 2、对成员的访问控制保护最强的是(C ) A、public 、 B、缺省、 C private D protected 3、可用做Java 标识符的是( B )。 A、try B_isYour C 2time D my name

Java练习题

Java练习题答案 一、填空 1、对象的状态和行为是对象的主要属性;前者对应类的变 量,行为又称为对象的操作,对应着类的方法。类的定义包括变量声明和方法声明。 2、要嵌入在HTML文件中运行的程序是Java Applet( Java Application、 Java Applet)。 3、安装JDK后,Java开发工具在Bin目录。 4、声明接口的保留字是interface。 5、类的声明“public class Test extends Applet implements Runable{}”中,定义的类名是Test ,其父类 是Applet ;实现了Runable 接口。这个类的源程序必须保存为Test.java(写出包括扩展名的文件名)。 6、一个完整的Java应用程序由一个或多个类组成;其中Java Application 至少有一个主类,这个类中包含一个名 为main的方法 7、JDK下解释执行Java的程序是java.exe 。 8、语句如下: int[] c1=int[10]; int[] c2={1,2,3,4,5,6,7,8,9,0}; 数组c1中的元素有10个;c2中的元素有10个;已初始化赋值的是c2(c1 c2)。

9、执行完下列程序后i的值为5。 int i=0; while(i<5) { i++; } 10、运行下列程序段后,结果c的取值为120。 int a = 100, b = 20,c; char oper ='+'; switch(oper) { case '+': c = a+b; break; case '-': c = a - b; break; default: c = a * b; break; } 11、为了能使用Java中已提供的类,我们需要用import语句来引入所需要的类。语句import java.io.*;中引入了java.io 包的所有类。 二、选择题 1、属于访问控制的关键字是( D )。 A、static B、final C、abstract D、private 2、对成员的访问控制保护最强的是(C)。

javaSE练习题2及答案

一、单选 1、(1分)下列描述中,错误的是( A )。 A.Java语言的性能要比C语言差 B.Java能够实现一次编写,处处运行 C.Java是一种面向对象的编程语言 D.Java有多线程机制 2、下列不属于java语言特点的是(B ) A.自动垃圾回收机制 B.面向过程的编程语言 C.跨平台特性 D.去除了难理解的指针等概念 3、下列不是虚拟机执行过程特点的是( A ) A.单线程 B.多线程 C.动态链接 D.异常处理 4、(2分)阅读下列代码,选出该代码段正确的文件名(B )。 class A{ void method1(){ System.out.println("Method1 in class A"); } } public class B{ void method2(){ System.out.println("Method2 in class B"); } public static void main(String[] args){ System.out.println("main() in class B"); } } A: A.java B:A.class C: B.java D: B.class 5、结构化程序设计所规定的三种基本控制结构是(C ) A、输入.处理.输出 B、树形.网形.函数 C、顺序.选择.循环 D、主程序.之程序.函数 6、下面为数组初始化正确的写法是( d ): A、double c[] = new double[]{1,2} B、double c[] = new double{1,2} C、double c[] = new double[](1,2) D、double c[] = new double(1,2) 7、(2分):下面不属于java类中的类修饰符的是(C ): A. public B. final C. extends D. abstract

java基础笔试测试题及答案

Java 一章至五章考试 一.填空题(8分) 1.面向对象的三大原则是(封装),(继承)和(多态).2 分 2.如果想在对象实例化的同时就初始化成员属性,则使用(构造函数).2 分 3.(实体)方法和(构造)方法不能修饰为abstract ?2分 选择题(60分) 1)在Java语言中,下列(a,d )是不满足命名规范的变量名。(选择二项) a) 姓名 b) $Name c) _in sta nceof d) in sta nceof 2) 下列Java代码片段的输出结果是(a )。 char c='a'; int i=c; float f=i; byte b=(byte)c; System.out.pri ntln( c+","+i+","+f+","+b); a) 编译错误 b) a,97,97,97 c) a,97,97.0,97 d) a,97,97.0f,97 3) 下列Java代码中,空白处的代码是(b,c )。(选择两项) public in terface Fee{ public float calLabFee(float unitPrice, float time); } public class FeeImpl impleme nts Fee { public float calLabFee(float unitPrice, float time){ retur n un itPrice * time; } } public class Fee In terfaceTest { public static void main( Stri ng[] args){ Float labFee = fee.calLabFee(400.00,5); } }

java基础测试题_含答案

姓名 一、选择题(每题2分,共30分) 1.请写出标识符的命名规则描述正确的是[多选]( ABCD ) A、由英文字母、数字、_和$组成,长度不限。 B、标识符的第一个字符不能是数字 C、标识符区分大小写。 D、标识符不能包含空格。 2. 下列属于正确标识符的选项有[多选](BDGH) A. int B. $_Count C. 3M D. Hello E. b-7 F. ms#d G. bool H. D9658 3、下列哪一个不属于java的基本类型( B ) A、int B、String C、float D、byte 4、下列那条语句能编译通过( A ) A、String String=”String”; B、float float=””; C、int int = 11; D、int i= ; 5、下列代码的执行结果是: ( D ) public class Test1{ public static void main(String args[]){ float t=; int q=5; }

} A、 40 B、 C、36 D、 6、int长度描述正确的是( A ) A、-2^31到2^31 - 1 B、-2^32到2^32 - 1 C、-2^7到2^7 - 1 D、-2^8到2^8 - 1 7、关于==和equals方法描述不正确的是( D ) A、==是运算符、equals是方法 B、==只比较对象,equals会先比较对象,如果不是一个对象,会对对象的值进行比较。 C、String a= "1"; String b= "1"; 输出结果为:true D、String a=new String("1");String b=new String("1"); 输出结果为:true 8、下列关于哪个不属于java的特性( D ) A、封装 B、继承 C、多态 D、重载 9、某一个子类要继承一个父类,要使用关键字( B ) A、import B、extends C、implements D、java 10、某一个子类要实现一个父接口,要使用关键字( C ) A、import B、extends C、implements D、java 11、以下关于接口和类的说法正确的是( C ) A、接口和类都可以实现多重继承 B、子类可以继承多个父类 C、子类可以实现多个接口 D、一个子类不能同时继承某一个父类和实现某一个接口 12、一个非抽象子类,如果要实现某个接口,则( A ) A、必须实现该接口中的所有抽象方法 B、可以实现部分抽象方法 C、可以不实现任何抽象方法

JAVA测试题(三套含答案)

<测试一> 1.在单一文件中import、class和package的正确出现顺序是:A A.package, import, class B.class, import, package C.import, package, class D.package, class, import 2.public static void main方法的参数描述是:A,D A.String args[] B.Strings args[] C.String args D.String []args 3.下面哪行代码会在编译的时候出现错误或警告:A,B,C,D A.float f=1.3; B.char c="a"; C.byte b=257; D.boolean b=null; E.int i=10; 4.编译,运行下列代码后的结果是:D public class Test { public static void main (String args []) { int age; age = age + 1; System.out.println("The age is " + age); } } A.编译,运行后没有输出 B.编译,运行后输出:The age is 1 C.能通过编译,但运行时产生错误 D.不能通过编译 4.下面那些关键字不是JAVA的关键字B A if B then C goto D while E case 5.下面那些不是合法的变量定义:A,F A.2variable B.variable2 C. _whatavariable

D. _3_ E. $anothervar F. #myvar 6.内部数据类型byte的取值范围是B A.0 - 65, 535 B.(–128) – 127 C.(–32,768) – 32,767 D.(–256) – 255 7.下列哪些表达式返回true AB A."john" == "john" B."john".equals("john") C."john" = "john" D."john".equals(new Button("john")) 8.声明公用的abstract方法的正确格式是A A.public abstract void add(); B.public abstract void add() {} C.public abstract add(); D.public virtual add(); 9.下面的代码能打印出的结果为:C int i=1; switch (i) { case 0: System.out.println("zero"); break; case 1: System.out.println("one"); case 2: System.out.println("two"); default: System.out.println("default"); } A.one B.one, default C.one, two, default D.default 10.下面的代码能打印出的结果为:B int i=9; switch (i) { default:

java练习题2及答案

试题编号: 重庆邮电大学××××学年××学期 一、选择题(每题1分,共30分) 1、下列哪些语句关于内存回收的说明是正确的? () A:程序员必须创建一个线程来释放内存; B:内存回收程序负责释放无用内存; C:内存回收程序允许程序员直接释放内存; D:内存回收程序可以在指定的时间释放内存对象。 2、有下列程序: public class aa{ public static void main(String[ ] args) { String s = "18.03"; try { double number1 = Double.parseDouble(s); System.out.print(number1); int number2 = Integer.parseInt(s); System.out.println(" " + number2); }catch(NumberFormatException nfe) { System.out.println(" Sorry"); }catch(Exception e){ } } } 执行结果是() A:18.03 B:Sorry C:18.03 Sorry D:出现编译错误 3、下面哪个选项可以将“hello”字符写入文件file.txt的末尾?() A:OutputStream out= new FileOutputStream ("file.txt"); Out.writeBytes ("hello"); B:OutputStream os= new FileOutputStream ("file.txt", true); DataOutputStream out = new DataOutputStream(os); out.writeBytes ("hello"); C:OutputStream os= new FileOutputStream ("file.txt"); DataOutputStream out = new DataOutputStream(os); out.writeBytes ("hello"); D:OutputStream os= new OutputStream ("file.txt", true); DataOutputStream out = new DataOutputStream(os); ×××××试卷第1页(共××页)

Java基础笔试机试测试题(带答案)

Java基础考试题 班级:__________ 姓名:___________ 日期:_____________ 一、笔试(45题,每题2分) 1) 分析下面的Java程序段,编译运行后的输出结果是()。 public class Test { public static void changeString(StringBuffer sb) { sb.append("stringbuffer2"); } public static void main(String[] args) { StringBuffer sb = new StringBuffer("stringbuffer1"); changeString(sb); System.out.println("sb = " + sb.toString()); } } A. sb = stringbuffer2stringbuffer1 B. sb = stringbuffer1 C. sb = stringbuffer2 D. sb = stringbuffer1stringbuffer2 2) 在Java中,包有多种用途,但不包含()。 A. 将类组合成较小的单元,便于使用 B. 有助于避免命名冲突 C. 有助于提高运行效率 D. 允许在更广的范围内保护类、数据和方法 3) 在Java中,如果要在字符串类型s="java"中,得到字母'v' 出现的位置,选()语句。 A)s.matches('v'); B)s.charAt('v'); C)s.indexOf('v'); D)s.substring('v'); 4)下列代码运行后,变量c的值是()。 int a=15,b=10; double c=a/b; a) 1.5 b) 1.0 c) 1 d) 0 5)main方法如下所示,该程序的运行结果是()。 public static void main(String [] args){ int i=0; System.out.print(i++); } a) 输出0 b) 输出1 c) 编译错误d) 运行时出现异常

java程序练习题

练习: 1.为类设计一个静态方法,实现检查输入字符串是否为”回文”.的功能 Boolean IsPalindrome(String poem) 2.用随机数对象产生0---1000范围内的不同整数,用以初始化一个M*N的二维数组(M*N<100),然后编程找出二维数组中的最大数和最小数,并将其交换位置。要求输出原始二维数组及交换后的二维数组。 3.设计一个类,并为其添加一个带有一个参数的构造函数,同时封装一个方法。当连续调用该方法时,依次产生下列元素输出 第一次调用输出:5 7 4 8 9 1 第二次调用输出:1 5 7 4 8 9 第三次调用输出:9 1 5 7 4 8 第四次调用输出:8 9 1 5 7 4 第五次调用输出:4 8 9 1 5 7 第六次调用输出:7 4 8 9 1 5 第一次调用输出:5 7 4 8 9 1 4.输入出租车公里数,输出应付的车费数: 收费标准如下:3000米以下为8元,每超过500米增加1.2元,不足500米按500米计算。 5.竹竿长10米,每天截取一半,过多少天后,竹竿长度会小于10厘米。 6.输入一个英文字符串,统计出其中各字符出现的次数,并以下列样式输出: a=?,b=?,c=?,d=?,e=? f=?,g=?,h=?,i=?,j=? …… 7.写一个实例方法,要求输入一个整数m ,并输出1---m之间满足下列条件的所有整数:这个数+1 是一个完全平方数,他的一半+1也是一个完全平方数。 8.设计一个类Complex,用于封装对复数的下列操作: 8.1.一个带参数的构造函数,用于初始化复数成员 8.2.一个不带参数的构造函数,调用代参数的构造函数完成对复数成员的初始化。 8.3. 实现两个复数的加法,减法的静态方法和实例方法。 8.4.以复数的标准形式:x+iy输出此复数 8.5. 写两个函数,分别获得复数的实部getReal(),getImage()和虚部。 9.写一个静态函数,返回给定整数n的所有因子 10.输入一个十六进制字符串,写一函数,将其转换为对应的十进制数。 11.设计一个只能创建一个唯一实例的类。 12.设计一个类,该类用于表示现代中国的一个典型家庭:father,mother,child. 并为其添加一个无参的构造函数和带三个参数的构造函数以及三个读写属性和 一个get(int member )方法,当member=FATHER时,返回 父亲的姓名;member=MOTHER时,返回母亲的姓名;member=CHILD时,返回 孩子的姓名;FATHER,MOTHER,CHILD 为常数。 13.巴黎时间比北京时间晚7个小时,纽约时间比北京时间晚12个小时,试编写一程序, 根据输入的北京时间输出相应的巴黎和纽约时间。 14.写一函数,实现用某一字符c 去填充字符串的左部,使其长度为恰好为L PadLeft(String s,int L,char c),同理,实现PadRight((String s,int L,char c) 用字符c 填充串s 的右部,使其长度恰好为L. 15. 写一方法,用于删除字符串中所有空格(不仅仅是两端的空格),并返回没有空格的字

JavaSE测试题及答案

JavaSE 内部测试题 一.选择题每题2分,共40分 1.在Java中,定义接口的关键字是()。(一项) a)abstract b)interface c)class d)extends 2.在Java中,类可派生自一个父类,并实现()个接口(一项) a) 1 b) 2 c) 3 d)任意多 3.在Java中,已定义了两个接口B和C,要定义一个类A 实现接口B和C,以下语句正 确的是(一项) a)class A extends B extends C b)class A implements B implements C c)class A implements B,C d)class A extends B,C 4.在Java中,使用interface声明一个接口时,以下()可以用来修饰该接口。(一项) a)private b)protected c)private、protected d)public 5.下列说法错误的是()。(一项) a)Java支持多重继承 b)Java可以通过实现接口,间接实现多重继承 c)Java可以实现多个接口 d)Java实现接口,必须实现接口中的方法。 6.在Java中,关于接口和抽象类,正确的是()(二项) a)public interface A{ private int varA =10; void methodA(); } b)public abstract class B { private int varA=10; void methodA(){}; } c)public interfacde C{ int varA =10; protected void methodA(); } d)public abstract class D{

JAVA语言复习题及答案

14年(下)程序设计(JAVA语言)复习题 第一:单选 1. 若有定义int x=3,y;则执行语句y=(++x)+(++x)+(++x);后y=()。 (A) 12 (B) 18 (C) 9 (D) 15 2. 下列选项中,不是Java关键字的是()。 (A) double (B) Integer (C) float (D) default 3. 在成员变量与局部变量重名时,若想在方法使用成员变量,要使用的关键字是()。 (A) super (B) import (C) this(D) return 4. 下列说法中错误的是( B )。 (A) 一个类中的实例方法可以调用其他实例方法 (B) 静态方法可以调用实例方法 (C) 实例方法可以调用静态方法 (D) 静态方法可以调用静态方法 5. 下列关于super的说法中错误的是()。 (A) 用来访问父类被隐藏的成员变量 (B) 用于调用父类中被重写的方法 (C) 用于定义父类 (D) 用于调用父类的构造函数 6. 下列选项属于接口中方法默认访问控制方式的是()。 (A) public (B) private (C) protected(D) default 7. 定义一个名为key的类,下列选项中使其不能被继承的定义是()。 (A) class key{} (B) native class key{} (C) class key{ final;} (D) final class key{} 8. 若有定义String tom=""我们是学生"";则tom.length()的值是()。 (A) 5 (B) 10 (C) 6 (D) 11 9. 调用repaint()方法,会出现什么情况( C )。 (A) 清除以前pain()方法所画的容 (B) 保留原来pain()所画的容 (C) 清除pain()以前所画的容,再一次调用pain()方法 (D) 在pain()以前所画容基础上,再一次调用pain()画新的容 10. 从下面的main()调用java lyrics a kiss is but a kiss 中可以访问单词“kiss”的是()。 (A) args[0] (B) args[5] (C) args[4] (D) args[3] 11. 使一个线程放弃处理器并休眠1.5秒,应调用的方法是()。 (A) sleep(1.5) (B) sleep(1500) (C) suspend(1.5) (D) suspend(1500) 12. 如要使处于等待状态的线程恢复到运行状态,应调用的方法是()。 (A) start() (B) run() (C) resume() (D) notify() 13. 如果想获得一个InetAddress对象的主机域名,可调用的方法是()。 (A) getName() (B) getHostName() (C) getAddress() (D) getHostAddress()

相关文档
最新文档