文档库 最新最全的文档下载
当前位置:文档库 › Java基础强化练习题2(附答案)

Java基础强化练习题2(附答案)

Java基础强化练习题2(附答案)
Java基础强化练习题2(附答案)

1. 下列代码的输出结果是:

public class Yikes {

public static void go(Long n) {

System.out.println("Long ");

}

public static void go(Short n) {

System.out.println("Short ");

}

public static void go(int n) {

System.out.println("int ");

}

public static void main(String[] args) {

short y = 6;

long z = 7;

go(y);

go(z);

}

}

A.

Long

Long

B.

Short

Long

C.

int

Long

D.

int

int

正确答案:C

2. 下面不属于接口的是:()。

A. java.sql.Connection

B. java.sql.Driver

C. java.sql.DriverManager

D. java.sql.ResultSet

正确答案:C

3. synchronized关键字做同步,可以使用在:()。

A. 方法上

B. 接口上

C. 变量上

D. 类上

正确答案:A

4. 类A的定义如下:

class A {

protected void f() throws FileNotFoundException { ………

}

}

下列代码段没有编译错误的是:()。

A.

class B extends A {

public void f() throws Exception {

………

}

}

B.

class B extends A {

public void g() throws IOException {

f();

}

}

C.

class B extends A {

public void g() {

try{

f();

………

}

catch(IOException e) {

………

}

catch(FileNotFoundException e1) {

………

}

}

}

D.

class B extends A {

public void g() {

try {

f();

}

catch(FileNotFoundException e) {

throw new RuntimeException(e);

}

}

}

正确答案:D

分析:子类重写父类的方法时候不能声明抛出比父类大的异常

5. 下列选项中能够得到字符串的一部分的单行函数是()。

A. INSERT

B. SUBSTR

C. LPAD

D. LEAST

正确答案:B

6. ResultSet提供了获取数据库中某个字段值的方法,如果某个字段为NUMBER类型,可以获取该字段值的方法是:( )。

A. getNumber()

B. getDouble()

C. setNumber()

D. setDouble()

正确答案:B

7. 下列代码编译和运行的结果是:

public class A {

void process() throws Exception {

throw new Exception();

}

public static void main(String[] args) {

A a = new B();

a.process();

}

}

class B extends A {

void process() {

System.out.println("B ");

}

}

A. 输出:B

B. 无输出

C. B类的process方法处,出现编译错误

D. 代码a.process();行,出现编译错误

正确答案:D

8. 下列代码编译和运行的结果是:

public static void main(String[] args) {

Float pi = new Float(3.14f);

if (pi > 3) {

System.out.print("pi is bigger than 3. ");

} else {

System.out.print("pi is not bigger than 3. ");

}

finally {

System.out.println("Have a nice day.");

}

}

A. 编译失败

B. 输出:pi is bigger than 3.

C. 输出:pi is bigger than 3. Have a nice day

D. 输出:pi is not bigger than 3. Have a nice day.

正确答案:A

9. 需要读取一个比较大的文本文件,这个文件里有很多字节的数据,那么下列最合适读这个文件的选项是:()。

A. new FileInputStream(“fileName”);

B. new InputStreamReader(new FileInputStream(“fileName”));

C. new BufferedReader(new InputStreamReader(new FileInputStream(“fileName”)));

D. new RandomAccessFile(“fileName”,”+rw”);

正确答案:C

10. 运行下列程序:

public static void main(String[] args) {

String str = "**oracle***oracle*****oracle***";

String str1 = "oracle";

int index = 0;

while ((index = str.indexOf(str1, index)) != -1) {

System.out.print(index + "");

index += str1.length();

}

}

控制台输出的结果是:()。

A. 1 10 21

B. 2 11 22

C. 3 13 23

D. 5 13 22

正确答案:B

11. 运行下列代码,输出为false的是:()。

A. String st1 = "abc";

System.out.println("abc" == st1);

B. String st2 = "abc";

System.out.println(st2.equals(new String("abc")));

C. Integer i = 100;

System.out.println(100 == i);

D. ArrayList list = new ArrayList();

System.out.println(list.contains(null));

正确答案:D

12. 下面关于ResultSet说法错误的是()。

A. 查询结束后,所有的结果数据将一次被存储在ResultSet对象中

B. Statement对象close后,由其创建的ResultSet对象将自动的close

C. 查询结束后,ResultSet中的游标指向第一条记录之上,因此要先调用一次next()才有可能取得记录

D. ResultSet的的方法getString(...)意为取得该列的数据以字符串的形式返回,数据库中的该列类型并不一定必须是字符类型

正确答案:A

13. 下列属于DML语句的是:()。

A. COMMIT

B. INSERT

C. DROP

D. GRANT

正确答案:B

14. 下面关于事务(Transaction)的说法错误的是:()。

A. 事务具备ACID四个基本特性,即A(Atomicity)—原子性、C(Consistency)—一致性、I(Isolation)—隔离性、D(Durability)—持久性。

B. 事务的提交(Commit)指将事务中所有对数据库的更新写到磁盘上的物理数据库中去,事务正常结束。

C. 事务的回滚(Rollback)指在事务运行的过程中发生了某种故障,事务不能继续进行,将事务中对数据库的所有以完成的操作全部撤消,回滚到事务开始的状态。

D. JDBC通过Connection对象控制事务,默认方式下,在执行完更改语句后需要必须要调用Connection的commit方法,对数据的更改才能生效。

正确答案:D

15. 运行下面程序:

public class Foo {

public static void main(String[] args) {

try {

test();

System.out.println("condition 1");

} catch (ArrayIndexOutOfBoundsException e) {

System.out.println("condition 2");

} catch (Exception e) {

System.out.println("condition 3");

} finally {

System.out.println("finally");

}

}

public static void test() {

String str = "cc";

https://www.wendangku.net/doc/143648592.html,pareTo("abc");

}

}

输出的结果是:()。

A. condition 1 finally

B. condition 2 finally

C. condition 1 condition 3 finally

D. condition 1 condition 2 finally

正确答案:A

16. 查询客户姓名以及他的推荐人,没有推荐人的客户信息不显示,下列sql语句正确的是:

A.

select a1.real_name customer, a2.real_name recommenderfrom account a1 join account a2on a1.id = a2.id;

B.

select a1.real_name customer, a2.real_name recommenderfrom account a1 join account a2on a1.recommender_id = a2.recommender_id;

C.

select a1.real_name customer, a2.real_name recommenderfrom account a1 join account a2on a1.recommender_id = a2.id;

D.

select a1.real_name customer, a2.real_name recommenderfrom account a1, a2on a1.recommender_id = a2.id;

正确答案:C

17. 下列代码的运行结果是()。

public class Forest implements Serializable {

private Tree tree = new Tree();

public static void main(String[] args) {

Forest f = new Forest();

try {

FileOutputStream fs = new FileOutputStream("Forest.ser");

ObjectOutputStream os = new ObjectOutputStream(fs);

os.writeObject(f);

os.close();

} catch (Exception ex) {

ex.printStackTrace();

}

}

class Tree {

}

A. 编译失败

B. 运行时,抛出异常

C. Forest的实例被序列化到文件

D. Forest的实例和Tree的实例都被序列化到文件

正确答案:B

18. 关于Java 异常,下列说法错误的是()。

A. 异常是定义了程序中遇到的非致命的错误,而不是编译时的语法错误

B. try……catch语句中对try 内语句监测,如果发生异常,则把异常信息放入Exception类的对象中

C. throws 用来表示一个方法有可能抛出异常给上一层,则在调用该方法时必须捕捉异常,否则无法编译通过

D. main方法不可以使用throws 抛出异常

正确答案:D

19. 现有订单表(orders),包含字段:cid(顾客编号),pid(产品编号)。若查询既订购了产品P01,又订购了产品P02的顾客编号,下列Sql语句正确的是()

A. SELECT DISTINCT(cid) FROM orders o1 WHERE o1.pid IN(‘p01’,’p02’)

B. SELECT DISTINCT(cid) FROM ORDERS o1,orders o2 WHERE o1.pid=’p01’ AND o2.pid=’p02’ AND o1.cid=o2.cid

C. SELECT DISTINCT(cid) FROM orders WHERE pid=’p01’ AND cid IN(select cid FROM orders WHERE pid=’p02’)

D. SELECT DISTINCT(cid) FROM orders o1,orders o2 WHERE o1.pid=’p01’ AND o2.pid=’p02’

正确答案:C

20. 在JDBC中使用事务,想要回滚事务的方法是( )。

A. Connection的commit()

B. Connection的setAutoCommit()

C. Connection的rollback()

D. Connection的close()

正确答案:C

21. 包含事务控制方法setAutoCommit, commit, rollback的是:() 。

A. Connection

B. Statement

C. ResultSet

D. DriverManager

22. 如果查询表a(有3行数据)和表b(有4行数据),使用SELECT * FROM a,b,返回的查询结果的行数是:()。

A. 7

B. 1

C. 0

D. 12

正确答案:D

23. 关于String 和StringBuffer 下面说法正确的是()。

A. String操作字符串不改变原有字符串的内容

B. StringBuffer连接字符串速度没有String 快

C. String 可以使用append方法连接字符串

D. StringBuffer 在java.util包中

正确答案:A

24. 下列代码的运行结果是()

public class Foo {

static void test() throws RuntimeException {

try {

System.out.print("test ");

throw new RuntimeException();

} catch (Exception ex) {

System.out.print("exception ");

}

}

public static void main(String[] args) {

try {

test();

} catch (RuntimeException ex) {

System.out.print("runtime ");

}

System.out.print("end ");

}

}

A. test end

B. test

C. test runtime end

D. test exception end

正确答案:D

25. 下列不属于Collection接口的方法的是:

A. clear

B. contains

C. remove

D. listIterator

正确答案:D

26. 现有如下建表SQL语句:

CREATE TABLE departments (

department_id NUMBER(4) PRIMARY KEY,

department_name VARCHAR2(20),

city VARCHAR2(20),

province VARCHAR2(20) )

下面插入语句正确的是:( )。

A. INSERT INTO departments VALUES(300,’abc’);

B. INSERT INTO departments(department_nam e,department_id) VALUES(300,’design’);

C. INSERT INTO departments(department_name,city) VALUES(‘design’,’bj’);

D. INSERT INTO departments VALUES(300,’abc’,null,null);

正确答案:D

27. 下面的描述错误的是:( )。

A. Statement的executeQuery()方法会返回一个结果集

B. Statement的executeUpdate()方法会返回是否更新成功的boolean值

C. 使用ResultSet中的getString()可以获得一个对应于数据库中char类型的值

D. ResultSet中的next()方法会使结果集中的下一行成为当前行

正确答案:B

28. 下列Oracle语句中,属于DDL语句的是()

A. DROP

B. INSERT

C. DELETE

D. SELECT

正确答案:A

29. 有一个表leanr,表里有三个字段分别是学号(student_id),课程(kc),成绩(grade)。查询表中存在课程重复2次以上的记录,显示课程和重复的次数,并且按照重复次数的降序排列,下列SQL语句正确的是:()。

A. SELECT kc,COUNT(kc) FROM leanr ORDER BY COUNT(kc) DESC GROUP BY kc WHERE COUNT(kc)>=2 ;

B. SELECT kc,COUNT(kc) FROM leanr ORDER BY COUNT(kc) DESC GROUP BY kc HAVING COUNT(kc)>=2 ;

C. SELECT kc,COUNT(kc) FROM leanr GROUP BY kc WHERE COUNT(kc)>=2 ORDER BY COUNT(kc) DESC;

D. SELECT kc,COUNT(kc) FROM leanr GROUP BY kc HAVING COUNT(kc)>=2 ORDER BY COUNT(kc) DESC;

正确答案:D

30. 在Oracle中,给Student表添加Address列,如下代码正确的是()。

A. ALTER TABLE student ADD COLUMN(address VARCHAR2(20))

B. UPDATE TABLE student ADD COLUMN(address VARCHAR2(20))

C. UPDATE TABLE student ADD(address VARCHAR2(20))

D. ALTER TABLE student ADD(address VARCHAR2(20))

正确答案:D

31. 下面关于结果集,说法错误的是:()。

A. 调用Connection对象的preparedStatement(String sql)方法所创建的PreparedStatement对象执行查询所得到的结果集不可以调用previous()方法。

B. Statement在执行完查询后,会把查询得到的所有数据通过网络一次加载到内存中。

C. ResultSet的getDate方法返回的类型是java.sql.Date而不是java.util.Date。

D. ResultSet的初始状态游标位于第一行之上,必须先调用其next方法,才可以获取到数据。正确答案:B

32. 请看下列代码:

public String makinStrings() {

String s = "Fred";

s = s + "47";

s = s.substring(2, 5);

s = s.toUpperCase();

return s.toString();

}

调用makinString方法,得到的字符串长度是:

A. 1

B. 2

C. 3

D. 4

正确答案:C

33. 下列代码编译和运行的结果是()

public class Foo {

public static void main(String[] args) {

java.util.List list = new java.util.ArrayList();

list.add(new B());

list.add(new C());

for (A a : list) {

a.x();

a.y();

}

}

}

interface A {

void x();

}

class B implements A {

public void x() {

}

public void y() {

}

}

class C extends B {

public void x() {

}

}

A. 代码运行没有输出

B. 运行时抛出异常

C. 代码a.y();行,编译错误

D. 代码java.util.List list = new java.util.ArrayList();行,编译错误

正确答案:C

34. 在JDBC连接数据库编程应用开发中,可以实现数据库连接的是()。

A. Connection接口

B. PreparedStatement类

C. CallableStatement类

D. Statement类

正确答案:A

35. 运行下面程序:

public static void main(String[] args) {

Map map = new HashMap();

map.put(String.valueOf(System.currentTimeMillis()) + "a", "1");

map.put(String.valueOf(System.currentTimeMillis()) + "b", "2");

map.put(String.valueOf(System.currentTimeMillis()) + "c", "3");

for (Map.Entry entry : map.entrySet()) {

System.out.println(entry.getValue());

}

}

输出的结果是:()。

A. 123

B. 312

C. 213

D. 123顺序无法确定

正确答案:D

36. 在Java语言中,下列说法正确的是:()。

A. StringBuffer和StringBuilder的区别在于:StringBuffer是线程安全的而StringBuilder不是。

B. String是不可变对象,而StringBuffer中封装的字符串数据是可以动态改变的。

C. 判断两个StringBuilder对象的字符序列是否相同,可以调用其equlas方法进行比较。

D. String的重写了equals方法,重写的逻辑是:字符序列相同的String对象equals方法返回true。

正确答案:ABD

37. 操作account表和age_segment表,查询客户huangrong 的年龄段,下列sql语句正确的是:

A. select real_name,birthdate,https://www.wendangku.net/doc/143648592.html,from account a join age_segment son round((sysdate - birthdate)/365) between lowage and hiageand real_name = 'huangrong';

B. select real_name,birthdate,https://www.wendangku.net/doc/143648592.html,from account a left join age_segment son round((sysdate - birthdate)/365) between lowage and hiageand real_name = 'huangrong';

C. select real_name,birthdate,https://www.wendangku.net/doc/143648592.html,from account a left join age_segment son round((sysdate - birthdate)/365) between lowage and hiagewhere real_name = 'huangrong';

D. select real_name,birthdate,https://www.wendangku.net/doc/143648592.html,from account a left join age_segment son round((sysdate - birthdate)/365) between lowage and hiage

正确答案:AC

38. 下面的方法属于StringBuffer的是:()。

A. size

B. insert

C. delete

D. length

正确答案:BCD

39. 下列语句在建表的同时在c2,c3列上创建了唯一约束,其中正确的是:

A.

create table test(

c1 number constraint test_c1_pk primary key,

c2 number constraint test_c2_uk foreign key,

c3 number constraint test_c3_ukforeign key);

B.

create table test(

c1 number constraint test_c1_pk primary key,

c2 number ,

c3 number ,

constraint test_c3_uk foreign key(c2,c3));

C.

create table test(

c1 number constraint test_c1_pk primary key,

c2 number ,

c3 number ,

constraint test_c3_uk unique(c2,c3));

D.

create table test(

c1 number constraint test_c1_pk primary key,

c2 number constraint test_c2_uk unique,

c3 number constraint test_c3_uk unique);

正确答案:CD

40. 请看下列代码:

public class Key {

private long id1;

private long 1d2;

// class Key methods

}

程序员开发Key类,作为java.util.HashMap的key,那么Key应该覆盖的两个方法是:

A. public int hashCode()

B. public boolean equals(Key k)

C. public int compareTo(Object o)

D. public boolean equals(Object o)

正确答案:AD

41. IO类实现了打开并读取一个文本文件,每次读取一行内容。将每行作为一个String字符串放入String数组里面返回。阅读代码并完成以下5题:

public class IO {

public String[] read(InputStream in) throws IOException {

String[] arr = new String[1];

String[] temp = null;

空白处1

String line ="";

while ((空白处2) != null) {

arr[arr.length - 1] = line;

空白处3

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

temp[i] = arr[i];

}

空白处4

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

arr[i] = temp[i];

}

}

arr = new String[temp.length - 1];

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

arr[i] = temp[i];

}

br.close();

return arr;

}

public static void main(String[] args) throws IOException {

String[] arr = new IO().read(new FileInputStream("data.txt"));

System.out.println(arr);

空白处5

System.out.println(str);

}

}

(1). 下列选项中,能填入空白处1的代码是( )

A. BufferedReader br = new BufferedReader(new InputStreamReader(in));

B. BufferedReader br = new BufferedReader(new FileReader(in));

C. FileReader br=new FileReader(in);

D. InputStreamReader br=new InputStreamReader(in);

正确答案:A

(2). 下列选项中,能填入空白处2的代码是( )

A. line = br.read();

B. line = br.readLine();

C. line = br.readString();

D. line = br.readUTF();

正确答案:B

(3). 下列选项中,能填入空白3的代码是( )

A. temp = new String[arr.length + 1];

B. temp = new String[arr.length];

C. temp = new String[arr.length-1];

D. temp = new String[arr.length/2];

正确答案:A

(4). 下列选项中,能填入空白处4的代码是( )

A. arr = new String[temp.length/2];

B. arr = new String[temp.length-1];

C. arr = new String[temp.length+1];

D. arr = new String[temp.length];

正确答案:D

(5). 下列选项中,能填入空白处5的代码是( )

A. for (arr: String str) {

B. for (arr[]:String str){

C. for (String str : arr) {

D. for (String str : arr[]) {

正确答案:C

42. ScoreManager类实现了成绩管理系统。该系统有如下功能供选则:录入成绩,成绩列表,查询成绩,退出。当用户在控制台输入1,用户选择的功能为录入成绩;输入2,用户选择的功能为成绩列表;输入3,用户选择的功能为根据姓名查找成绩;输入4,退出。ScoreManager类代码如下:

public class ScoreManager {

public static void main(String[] args) {

int numOfStudents = 10;

//学生名字信息数组

String[] students = NameUtils.randomNames(numOfStudents);

int[] scores = new int[numOfStudents];//学生成绩数组

//使用Scanner接收控制台的输入信息

空白处1

System.out.println("**********欢迎进入成绩管理系统**********");

while (true) {

System.out.println(" 请选择功能:1——成绩录入,2——成绩列表,3——成绩查询,4——退出");

String c = scanner.next().trim();

if ("1".equals(c)) {

System.out.println("开始录入成绩:");

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

System.out.print((i + 1) + ". 学生姓名:" + students[i]+ ", 成绩:?");

//从控制台接收到学生成绩

空白处2

}

System.out.println("录入完毕。");

}

else if ("2".equals(c)) {

int avg = 0;

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

avg += scores[i];

}

//计算学生的平均成绩

空白处3

System.out.println(StringUtils.rightPad("编号", 20, " ")+ StringUtils.rightPad("姓名", 20, " ")

+ StringUtils.rightPad("成绩", 20, " "));

System.out.println(StringUtils.repeat("-", 30));

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

System.out.println(StringUtils.rightPad(i + 1 + "", 10, " ")+ StringUtils.rightPad(students[i], 10, " ")+ StringUtils.rightPad(scores[i] + "", 10, " "));

}

System.out.println(StringUtils.repeat("-", 30));

System.out.println("平均成绩: " + avg);

}

else if ("3".equals(c)) {

System.out.print("请输入您要查询的学生姓名:");

String student = scanner.next().trim();

int i = 0;

for (; i < students.length; i++) {

//如果查找到某个学生的信息,退出当前循环

空白处4

}

if ( 空白处5 ) {

System.out.println((i + 1) + ". 学生姓名:" + students[i]+ ", 成绩:" + scores[i]);

}

else {

System.out.println("对不起,找不到学员的信息。");

}

}

else if ("4".equals(c)) {

System.out.println("**********谢谢使用**********");

break;

}

}

scanner.close();

}

}

(1). 下列选项中,能填入空白处1的代码是( )

A. Scanner scanner = new Scanner(System.out);

B. Scanner scanner = new Scanner(System.in);

C. Scanner scanner = new Scanner(new FileInputStream(System.in));

D. Scanner scanner = new Scanner(new FileOutputStream(System.out));

正确答案:B

(2). 下列选项中,能填入空白处2的代码是( )

A. scores[i] = scanner.nextInt();

B. scores[i] = scanner.next();

C. scores[i] = scanner.nextDouble();

D. scores[i] = scanner.nextString();

正确答案:A

(3). 下列选项中,能填入空白处3的代码是( )

A. avg *= scores.length;

B. avg /= scores.length;

C. avg *= scores.length-1;

D. avg /= scores.length-1;

正确答案:B

(4). 下列选项中,能填入空白处4的代码是( )

A. if (student.equalsIgnoreCase(students[i-1])) { break; }

B. if (student.equalsIgnoreCase(students[i])) { continue; }

C. if (student.equalsIgnoreCase(students[i-1])) { continue; }

D. if (student.equalsIgnoreCase(students[i])) { break; }

正确答案:D

(5). 下列选项中,能填入空白处5的代码是( )

A. scores.length < scores.length-1

B. scores.length < scores.length

C. i < students.length

D. i < students.length-1

正确答案:C

Java上机练习题

Java 复习题 第一章 1、分别用Java应用程序和Java小程序编写程序:在屏幕上输出“Hello,欢迎来到精彩的 Java世界!”。 程序:①应用程序:HelloWorld1.java ②小程序:HelloWorld.java和A.htm Java 应用程序: 《HelloWorld1.java》 public class HelloWorld1{ public static void main(String[] args){ System.out.println("Hello,欢迎来到精彩的Java世界!"); } } Java 小程序: 《HelloWorld.java》 import java.applet.Applet; import java.awt.Graphics; public class HelloWorld extends Applet{ public void paint(Graphics g){ g.drawString("Hello,欢迎来到精彩的Java世界!",2,20); } } 《A.htm》 我的第一个JAVA Applet程序 第二章 1、26页案例3:TriangleArea.java(三角形面积) 编写一个java程序,已知三角形三边边长,求三角形面积。要求三条边长从控制台输入。其中4,3,6分别代表三角形的三条边。 《TriangleArea.java》 public class TriangleArea{ public static void main(String[] args){ double a=Double.parseDouble(args[0]); double b=Double.parseDouble(args[1]); double c=Double.parseDouble(args[2]); if(a+b<=c||a+c<=b||b+c<=a)

java单选题库-博学谷

一、单选题 属于以下哪种语言() A. 机器语言 B. 汇编语言 C. 高级语言 D. 以上都不对 答案:C 解析:Java是一门高级编程语言 考察点:第一章 Java开发入门 题目难度:★☆☆☆容易 2.下列目录中,哪一个是用来存放JDK核心源代码的 A. lib目录 B. src目录 C. jre目录 D. include目录 答案:B 解析:JDK核心源代码存放在src文件夹下 考察点:第一章 Java开发入门 题目难度:★☆☆☆容易 3.下面命令中,可以用来正确执行HelloWorld案例的是() A. java HelloWorld B. java C. javac HelloWorld D. javac

答案:A 解析:java命令负责运行编译后的.class文件,不需要文件后缀名。 考察点:第一章 Java开发入门 题目难度:★☆☆☆容易 4.下面关于配置path环境变量作用的说法中,正确的是() A. 在任意目录可以使用javac和java命令 B. 在任意目录下可以使用class文件 C. 在任意目录可以使用记事本 D. 在任意目录下可以使用扫雷游戏 答案:A 解析:path环境变量的作用是在任意目录下都可以使用javac和java命令。 考察点:第一章 Java开发入门 题目难度:★☆☆☆容易 5.下列选项中,可以正确配置classpath的命令是() A. set classpath =C:\Program Files\Java\ set classpath : C:\Program Files\Java\ classpath set =C:\Program Files\Java\ classpath set : C:\Program Files\Java\ 答案:A 解析:配置classpath的命令是set classpath=xxx,并且等于号两边不要有空格。 考察点:第一章 Java开发入门 题目难度:★☆☆☆容易 6.下面选项中,完全面向对象的编程语言是() A. C B. COBOL C. JAVA D. FORTRAN 答案:C

Java经典编程题50道

【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一 对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21.... 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。 【程序3】 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如: 153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。 【程序4】 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 (2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。 (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 【程序5】 题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下 的用C表示。 1.程序分析:(a>b)?a:b这是条件运算符的基本例子。 【程序6】 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 1.程序分析:利用辗除法。 【程序7】 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 1.程序分析:利用while语句,条件为输入的字符不为'\n'. 【程序8】 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加), 几个数相加有键盘控制。 1.程序分析:关键是计算出每一项的值。 【程序9】

Java循环上机练习机答案

1、打印出 100~999之间的所有“水仙花数”。所谓“水仙花数”,是指一个3位数,其各位数字立方和等于该数本身。例如: 153是一个”水仙花数“,因为 153=1^3+5^3+3^3 publicclass daffodils { publicstaticvoid main(String[] args) { int a,b,c; for(a=1;a<=9;a++){ for(b=0;b<=9;b++){ for(c=0;c<=9;c++){ if((a*a*a+b*b*b+c*c*c)== (a*100+b*10+c)){ System.out.println(a*100+b*10+c); } } } } } } 2、求整数1~100的累加值,但要求跳过所有个位为3的数。(使用for循环实现) publicclass AddNum { publicstaticvoid main(String[] args) { int i = 0,n = 0; for(int a = 0;a<10;a++){ for(int b = 0;b<=9;b++){ if(b!=3){ i = a * 10 + b; n += i; } } } n += 100; System.out.println(n); } } 3、输入一个整数N,判断该数是不是质数,如果是质数输出"N是一个质数",否则输出"N不是质数"。提示:除了1和它本身不能被任何数整除。(使用for循环实现) import java.util.Scanner;

publicclass PrimeNumber { publicstaticvoid main(String[] args) { int n = 0; boolean t = true; Scanner N = new Scanner(System.in); System.out.println("请输入要判断的正整数:"); n = N.nextInt(); if(n == 1){ System.out.println(n+"不是质数"); }else{ for(int i = 2;i <= n/2;i++){ if(n%i == 0){ t = false; break; } } if(t){ System.out.println(n+"是质数"); }else{ System.out.println(n+"不是质数"); } } } } 4、在屏幕上打印金字塔图案,若n=5,则图案如下图: * *** ***** ******* ********* publicclass Pyramid { publicstaticvoid main(String[] args) { for(int i = 1;i<=5;i++){ for(int j = 1;j<5-i;j++){ System.out.println(""); } for(int k = 1;k<=2*i-1;k++){ System.out.println("*");

Java基础知识笔试题及答案2

1.Java中提供了名为()的包装类来包装原始字符串类型。 A.Integer B.Char C.Double D.String 2.https://www.wendangku.net/doc/143648592.html,ng包的()方法比较两个对象是否相等,相等返回true。 A.toString()B.equals()C.compare()D.以上所有选项都不正确3.使用()方法可以获得Calendar类的实例。 A.get()B.equals()C.getTime()D.getInstance() 4.下面的集合中,()不可以存储重复元素。 A.Set B.Collection C.Map D.List 5.关于Map和List,下面说法正确的是()。 A.Map继承List B.List中可以保存Map或List C.Map和List只能保存从数据库中取出的数据 D.Map的value可以是List或Map 6.给定如下Java代码,编译运行的结果是()。 Import java.util.*; public class Test { public static void main(String[] args) { LinkedList list=new LinkedList(); list.add(“A”); list.add(2,”B”); String s=(String)list.get(1); System.out.println(s); }

A.编译时发生错误B.运行时引发异常C.正确运行,输出:A D.正确运行,输出:B ###############################################################3 3.所有异常的父类是()。 A.Error B.Throwable C.RuntimeException D.Exception 4.下列()操作不会抛出异常。 A.除数为零B.用负数索引访问数组 C.打开不存在的文件D.以上都会抛出异常 5.能单独和finally语句一起使用的块是()。 A.try B.throws C.throw D.catch 6.在多重catch块中同时使用下列类时,()异常类应该最后列出。 A.Exception B.ArrayIndexOutOfBoundsException C.NumberFormatException D.ArithmeticException 7.执行下面的代码会引发()异常。 String str=null; String strTest=new String(str); A.InvalidArgumentException B.IllegalArgumentException C.NullPointerException D.ArithmeticException 8.这段代码的输出结果是()。 try{ System.out.print(“try,“); return; } catch(Exception e){ System.out.print(“catch,“); } finally { System.out.print(“finally”);

java循环结构while基础入门

1 while循环的基本格式 /* while循环的基本格式: while(判断条件语句) { 循环体语句; } 扩展格式: 初始化语句; while(判断条件语句) { 循环体语句; 控制条件语句; } 通过这个格式,我们就可以看到其实和for循环是差不多的。 for(初始化语句;判断条件语句;控制条件语句) { 循环体语句; } */ class WhileDemo { public static void main(String[] args) { //输出10次"HelloWorld" //for语句版 for(int x=0; x<10; x++) {

System.out.println("HelloWorld"); } System.out.println("--------------"); //while语句版 int x=0; while(x<10) { System.out.println("HelloWorld"); x++; } } } 2 while循环的实现 /* 练习:用while循环实现 左边:求出1-100之和 右边:统计水仙花数有多少个 初始化语句; while(判断条件语句) { 循环体语句; 控制条件语句; } for(初始化语句;判断条件语句;控制条件语句) {

循环体语句; } */ class WhileDemo2 { public static void main(String[] args) { //求出1-100之和 //for语句版本 int sum = 0; for(int x=1; x<=100; x++) { sum+=x; } System.out.println("sum:"+sum); System.out.println("--------"); //while语句版本 int sum2 = 0; int y=1; while(y<=100) { sum2+=y; y++; } System.out.println("sum2:"+sum2); System.out.println("--------"); } }

java_循环结构一_教案

第5章循环结构一 一、整章授课思路 ........................................................................................................................... - 2 - 二、回顾、预习检查、任务、目标部分: [10分钟] ...................................................................... - 3 - 三、课程知识点讲解: ................................................................................................................... - 3 - 1.while循环结构:[30分钟] .......................................................................................................................... - 3 - 2.do-while循环结构:[20分钟] .................................................................................................................... - 4 - 3.程序调试:[30分钟] .................................................................................................................................... - 5 - 四、本章总结[10分钟] ................................................................................................................ - 5 - 五、学员问题汇总 ........................................................................................................................... - 5 - 六、作业 ........................................................................................................................................... - 6 -

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、实现一个课程名称和课程代号的转换器:输入下表中的课程代号,输出课程的名称。用户可以循环进行输入,如果输入n就退出系统。(使用do-while循环实现) public class A2 { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); String ke=""; do { S ystem.out.println("请输入代码:"); k e=scanner.next(); i f(ke.equals("1")){ System.out.println("使用Java语言理解程序逻辑"); } i f(ke.equals("2")){ System.out.println("使用HTML语言开发商业站点"); } i f(ke.equals("3")){ System.out.println("使用SQL Server管理和查询数据"); } i f(ke.equals("4")){ System.out.println("使用C#开发数据库应用程序"); } i f(ke.equals("n")){ System.out.println("出错!"); break; } } while (true); } } 2、本金10000元存入银行,年利率是千分之三。每过1年,将本金和利息相加作为新的本金。计算5年后,获得的本金是多少?(使用for循环实现)

class A3 { public static void main(String[] args) { double mon = 10000; for( int i = 0; i < 5; i++){ mon *= 1+0.003; } System.out.println("5年后,获得的本金是"+mon+"元"); } } 3、求整数1~100的累加值,但要求跳过所有个位为3的数。(使用for循环实现) public class A4 { public static void main(String[] args) { int i = 0,n=0; for (int a = 0; a < 10; a++) { for (int b = 0; b <= 9; b++) { if (b!=3) { i=a*10+b; n+=i; } } } n+=100; System.out.println(n); } } 4、输入一个正整数N,判断该数是不是质数,如果是质数输出“N是一个质数”,否则输出“N不是质数”。提示:质数的含义:除了1和它本身不能被任何数整除。(使用for循环实现) import java.util.Scanner; public class A5 { public static void main(String[] args) { int n,m=0; Scanner N=new Scanner(System.in); System.out.println("请输入要判断的数字:"); do{ n=N.nextInt(); for (int i = 2; i < n; i++) { if (n%i==0) { m=1; }

百一测评——Java经典面试题 带答案

职业技能题库&在线云笔试平台https://www.wendangku.net/doc/143648592.html, 试卷名称:Java经典面试题带答案 试卷描述:java笔试题目、招聘笔试、微信考试、在线考试 试卷链接:https://www.wendangku.net/doc/143648592.html,/store/open/paperInfo/41651 试卷限时:50分 一.单项选择题 每题分值:2.5分 是否题目乱序:是 是否选项乱序:是 是否可回溯:是 难度:中 1.[单选]Java是从()语言改进重新设计。 A.Ada B.C++ C.Pasacal D.BASIC 答案:B 2.[单选]下列语句哪一个正确() A.Java程序经编译后会产生machine code B.Java程序经编译后会产生byte code C.Java程序经编译后会产生DLL D.以上都不正确

职业技能题库&在线云笔试平台https://www.wendangku.net/doc/143648592.html, 答案:B 3.[单选]下列说法正确的有() A.class中的constructor不可省略 B.constructor必须与class同名,但方法不能与class同名 C.constructor在一个对象被new时执行 D.一个class只能定义一个constructor 答案:C 4.[单选]提供Java存取数据库能力的包是() A.java.sql B.java.awt C.https://www.wendangku.net/doc/143648592.html,ng D.java.swing 答案:A 5.[单选]下列运算符合法的是() A.&& B.<> C.if D.:= 答案:A 6.[单选]执行如下程序代码 a=0;c=0;

职业技能题库&在线云笔试平台https://www.wendangku.net/doc/143648592.html, do{ --c; a=a-1; }while(a>0); 后,C的值是() A.0 B.1 C.-1 D.死循环 答案:C 7.[单选]下列哪一种叙述是正确的() A.abstract修饰符可修饰字段、方法和类 B.抽象方法的body部分必须用一对大括号{}包住 C.声明抽象方法,大括号可有可无 D.声明抽象方法不可写出大括号 答案:D 8.[单选]下列语句正确的是() A.形式参数可被视为localvariable B.形式参数可被字段修饰符修饰 C.形式参数为方法被调用时,真正被传递的参数 D.形式参数不可以是对象

java上机1题目

《面向对象程序设计》上机1题目 要求首先将上机报告文档改为正确名称,将题目中相应姓名学号改为个人真实信息,将程序源码和运行结果截图附在上机报告中。 一、运行如下程序 (1)Java Application程序,其源代码如下: public class MyFirstProgram { public static void main( String[] args) { System.out.println("学号姓名调试的的第一个应用程序"); } } 通过命令 javac 和java完成程序的编译与运行 二、查看下列java程序错误信息,并改正。 1.上机运行.java,改正错误,直到可执行为止 2.上机运行DataType.java,改正错误,直到可执行为止 三、编程题 public class ExerciseOne{ public static void main(String args[]){ int i=10; short j; j=(int)i; System.out.println(j); }

1.编写一程序Ex1学号.java,利用System.out.println()方法分别输出下列语句的执行结果: 将变量m的初值赋值为10,变量n的初值赋值为5。 变量m的值加3,n的值加5。 求m和n的平均值,并将该值赋于变量p。 将m的平方乘以n的平方并赋值给变量q。 请注意各变量定义时所应该使用的数据类型。 2、编写程序Ex2学号.java,用if-else语句和switch语句来编程,判断某月份属于哪个季节(12、1、2月属于冬天; 3、 4、5月属于春天;6、7、8月属于夏天;9、10、11月属于秋天。其他数值应给出出错信息)。 int yue; yue=scan.nextInt(); System.out.println("m="+m); System.out.println("n="+n); System.out.println("p="+p); System.out.println("q="+q) 3、编写程序Ex3学号.java,编写打印如下图形的程序。(使用for 循环嵌套) # # # # # # # # # # # # # # #

JAVA基础面试题经典

JAVA基础面试题经典

第一阶段题库 基础知识部分: 1.JDK是什么?JRE是什么? a)答:JDK:java开发工具包。JRE:java运行时 环境。 2.什么是java的平台无关性? a)答:Java源文件被编译成字节码的形式,无论 在什么系统环境下,只要有java虚拟机就能运行这个字节码文件。也就是一处编写,处处运行。这就是java的跨平台性。 3.在一台电脑上配置java环境,path起什么作 用?如何配置? a)答:path的作用是在DOS环境下,能在任意 位置使用JDK目录中bin文件夹中的可执行程序,来编译执行java程序。 b)在环境变量中找到path变量,把bin文件夹 的绝对路径加上即可。 4.什么样的标识符是合法的? a)由字母、数字、_和$组成,长度不限。其中字 母能够是大写或小写的英文字母,数字为0到9。

b)标识符的第一个字符不能是数字。 c)标识符区分大小写。 d)标识符不能包含空格。 5.Java有几种基本数据类型? a)byte,short,int,long,char,boolean,float,double 6.什么是隐式类型转换?什么是显示类型转换? a)当将占位数少的类型赋值给占位数多的类型 时,Java自动使用隐式类型转换。 b)当把在级别高的变量的值赋给级别底变量时, 必须使用显示类型转换运算。 7.&&和&区别,||和|区别? a)&&和||是短路与,短路或,当左边的表示式能 判断当前结果,则不判断右边的表示式。 b)而& 和|则将两边的表示式都运算完毕后,再 算结果。 8.break,continue区别? a)break结束最近的一个循环,continue结束当 次循环,进入下次循环。 9.类的命名规则是什么? a)如果类名使用拉丁字母,那么名字的首写字母 使用大写字母。

java运用循环编程题及答案

1.编写一个数的阶乘和。eg. Sum=1!+2!+3!+4!+5! public class j1_20 { public static void main(String[] args) { int a,sum,b=0,i; sum=0; for(b=1;b<=5;b++){ a=1; for(i=1;i<=b;i++){ a=a*i; } sum+=a; } System.out.println("1到5的结成和"+sum); } } 结果 2.把一个数组里的数字按照从小到大的顺序排列出来 public class j_sort { public static void main(String[] args) { int a[]=new int[]{12,15,63,56,21,71,91,3,16,43}; for(int i=0;i<10;i++){ for(int j=i+1;j<10;j++){ if(a[i]>a[j]){ int t; t=a[i]; a[i]=a[j]; a[j]=t; } } } System.out.println("从小到大的顺序为:"); for(int i=0;i<10;i++){ System.out.print(a[i]+" "); } } } 结果是

3.输出一个三角形 public class j_triangle1 { public static void main(String[] args) { int a=5,b=5; for(int i=1;i<5;i++){ for(int j=0;j<5-i;j++){ System.out.print(" "); } for(int e=1;e<=i;e++){ System.out.print("@"+" "); } System.out.println(""); } System.out.println("-----------"); for(int i=1;i<5;i++){ for(int j=0;j<5-i;j++){ System.out.print(" "); } for(int e=1;e<2*i;e++){ System.out.print("@"); } System.out.println(""); } } } 结果是

Java基础上机题_分类整理版汇总

一、类和对象基础题(共13题) 1.编写一个Java应用程序,该程序中有3个类:Lader、Circle和主类A。具体要求如下:Lader类具有类型为double的上底、下底、高、面积属性,具有返回面积的功能,包括一个构造方法对上底、下底、高进行初始化。Circle类具有类型为double的半径、周长和面积属性,具有返回周长、面积的功能,包括一个构造方法对半径进行初始化。主类A用来测试类Lader和类Circle的功能。 2.按要求编写Java应用程序: (1)编写西游记人物类(XiYouJiRenWu) 其中属性有:身高(height),名字(name),武器(weapon) 方法有:显示名字(printName),显示武器(printWeapon) (2)在主类的main方法中创建二个对象:zhuBaJie,sunWuKong。并分别为他们的两个属性(name,weapon)赋值,最后分别调用printName, printWeapon方法显示二个对象的属性值。 3.编写Java应用程序。首先定义一个描述银行账户的Account类,包括成员变量“账号”和“存款余额”,成员方法有“存款”、“取款”和“余额查询”。其次,编写一个主类,在主类中测试Account类的功能。 4.编写Java应用程序。首先,定义一个时钟类——Clock,它包括三个int型 成员变量分别表示时、分、秒,一个构造方法用于对三个成员变量(时、分、秒)进行初始化,还有一个成员方法show()用于显示时钟对象的时间。其次,再定义一个主类——TestClass,在主类的main方法中创建多个时钟类的对象,使用这些对象调用方法show()来显示时钟的时间。 5.编写Java应用程序。首先,定义描述学生的类——Student,包括学号(int)、姓名(String)、年龄(int)等属性;二个方法:Student(int stuNo,String name,int age) 用于对对象的初始化,outPut()用于输出学生信息。其次,再定义一个主类——TestClass,在主类的main方法中创建多个Student类的对象,使用这些对象来测试Student类的功能。 6.编写一个Java应用程序,该应用程序包括2个类:Print类和主类E。Print 类里有一个方法output()功能是输出100 ~ 999之间的所有水仙花数(各位数字的立方和等于这个三位数本身,如: 371 = 33 + 73 + 13。)在主类E的main方法中来测试类Print。 7.编写Java应用程序。首先,定义一个Print类,它有一个方法void output(int

Java程序员认证考试题库

第一部分 基础知识练习 目标 本章对应于《学生指南》各章的内容分别提供了练习题集,包括: ●第一章Java入门 ●第二章数据类型和运算符 ●第三章流程控制与数组 ●第四章封装 ●第五章继承 ●第六章抽象类与接口 ●第七章多态 ●第八章异常 ●第九章多线程机制 ●第十章输入输出流 ●第十一章使用泛型和集合框架 ●第十二章基于Swing的图形用户界面(GUI)设计 ●第十三章Java事件驱动编程

第一章练习题(Java入门) (C)1.下列哪项不是JDK所包含的内容?(选一项)A.Java编程语言 B.工具及工具的API C.Java EE扩展API D.Java平台虚拟机 2.下列关于JDK、JRE和JVM的描述。哪项正确?A.JDK中包含了JRE,JVM中包含了JRE B.JRE中包含了JDK,JDK中包含了JVM C.JRE中包含了JDK,JVM中包含了JRE D.JDK中包含了JRE,JRE中包含了JVM 3.下列哪个工具可以编译java源文件? A.javac B.jdb C.javadoc D.junit 4.JDK工具javadoc的作用是哪项? A.生成Java文档 B.编译Java源文件 C.执行Java类文件 D.测试Java代码 5.以下哪些包是Java标准库中常用的包?(选三项)A.java.lang B.javax.servlet .http C.j ava. io D.java.sql

6.使用JDK工具生成的Java文档的文件格式是? A.XML格式 B.自定义格式 c.二进制格式 D.HTML格式 (AC)7.以下关于JVM的叙述,哪项正确?(选两项) A.JVM运行于操作系统之上,它依赖于操作系统 B.JVM运行于操作系统之上,它与操作系统无关 C.JVM支持Java程序运行,它能够直接运行Java字节码文件D.JVM支持Java程序运行,它能够直接运行Java源代码文件 8.以下关于支持Java运行平台的叙述,哪项错误? A.Java可在Solaris平台上运行 B.Java可在Windows平台上运行 C.Java语言与平台无关。Java程序的运行结果依赖于操作系统D.Java语言与平台无关。Java程序的运行结果与操作系统无关 (B)9.以下关于Applet和Java程序之间关系的叙述,哪项错误? A.-个Applet就是一段Java程序 B.Applet是一种特殊的Java程序,它需要运行在Web服务器上C.Applet是一种特殊的Java程序,它需要运行在Web浏览器上D.Applet是一种Java SE平台的应用程序 (AD)10.以下关于Java HotSpot的描述,哪两项错误?(选两项)A.Java HotSpot是一种热编译技术,在编译Java源程序时会被使用B.Java HotSpot是一种热编译技术,在运行Java代码时会被使用C.Java HotSpot是一种热编译技术,它只对程序的部分字节码进行优化D.Java HotSpot是一种热编译技术,它会对程序的全部字节码进行优化

Java循环结构习题

A,求1到100以内的素数.要求每10个数换一行。 1.public class SuShu{ 2.public static void main(String[] args) { //求1到100的素数,实际就是求2 到99的素数,要知道的知识点是除2以为,所有的偶数都是素数。 3.inti,y;//必须在for语句之前定义,可以不对变量赋值 4.int t=0; 5.for(i=2;i<=99;i++){ 6. for( y=2;y<=i;y++) 7. { if(i%y==0) 8. break; 9. } 10.if(y==i){ 11.System.out.print(" "+y); 12.t++; 13.} 14. if(t%10==0){ 15.System.out.println(); 16. } 17. 18. 19.} 20.} 21.} B,一个自然数是素数,且它的数字位置任意对换后形成的数仍未素数,这种数叫做绝对素数,例如13 和31。编写一个程序,显示100以内的所有绝对素数。 分析,由题意可以知道必须是两位数字,而且只能有1、3、7、9组合,个位为5的能被5整数,不是素数。 publicclass Demo{ publicstaticvoid main(String[] args) { for(int i=10;i<=100;i++) { if(isSushu(i)&&isSushu(conveter(i))) { System.out.print(i+" "); }

} } staticboolean isSushu(int i)//i是否为素数 { int j=2; //用2到i-1之间的任一整数去整除 for(;j

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); } }

相关文档