JavaSE基础练习题

                                         JavaSE基础练习题

                                                                                                                             作者:田超凡

版权所有,转载请注明原作者,仿冒侵权必究法律责任

选择题:(3*10)

1) 下列说法正确的是(C)

A.运算符优先级最高的是关系运算

B.数组的长度在使用过程中可以修改

C.if-else内部嵌套中不能使用break

D.选择结构和循环结构不能互相嵌套

2) 在Java中,(C )关键字用来退出循环,将控制权转给程序的其他部分。

A. return

B. continue

C. break

D. exit

3) 在Java语言的控制结构中,break语句是经常用到的语句。下面一段代码中break语句起到(C )的作用。

int pointer = 0;

while (pointer <= 10) {

    switch (pointer % 3) {

    case 1:

        pointer += 1;

        break;

    case 2:

        pointer += 2;

        break;

    default:

        pointer += 3;

        break;

    }

}

A. 结束当次循环,使控制权直接转移到控制循环的条件表达式

B. 从嵌套循环内部跳出最里面的循环

C. 终止switch语句的语句序列

D. 退出循环

4) 给定如下Java代码片段,编译运行后,输出结果是(B )。

String s="ABCDE";

System.out.print(s.substring(3).concat("FGH"));

A. CDEFGH

B. DEFGH

C. FGH

D. ABCDE

5)  i%3!=0表示的是(B )

A.求出3的倍数

B.求出不能被3整除的数字

C.对3求百分比

D.求出能被3整除的数字

6)System.out.print(!(27>18) || (12>21));,这段代码的运行结果是(C)

A.报错

B.true

C.false

D.无输出

7).下列说法正确的是(B)

A.在当前类中定义的成员变量,可以在main方法中直接使用。

B.局部变量作用域仅仅在定义它的方法内,或者在他的控制流块中。

C.使用别的类的方法可以就直接引用方法名称即可。

D.类的只能有不带参数的方法。

8).关于java包的说法错误的是(C)

A.包名由用户自定义的。

B.包其实就像是windows中的文件夹,更好的对类进行归类。

C.不同的包中不能出现类名相同的类

D.使用package申明包,使用import引入包

9).下列关于字符串的叙述中错误的是(C)

A.字符串String比较是否相等不能用= =。

B.字符串String不属于基本数据类型。

C.可以使用StringBuffer sbf=”这里是字符串”声明并初始化StringBuffer对象

D.String类提供许多操作字符串的方法:;连接,提取,查询等。

10).下列说法正确的是(C)

A.程序执行到break就一定会结束所有的循环。

B.程序执行到continue就会结束结束当前循环即continue所在的循环。

C.continue和break可以出现在一个循环体中。

D.continue和break语句的作用相同,可以互相替换。

简答题(10*2)

1.什么是方法的重载?实例化一个类的对象其实是做什么? 

2.简述数组的使用场景,对象数组的操作过程?

方法重载:在同一个类中,方法名称相同,参数不同

特点:在定义方法的时候不需要考虑方法名称,只需要关注形参即可。

方法的参数是区分方法重载的唯一依据。

实例化一个类的对象其实是在构造方法,构造方法需要和类名相同,构造方法没有返回值,不能加void。默认的构造方法是隐含的,每一个类都有一个默认的构造方法。当构造方法被重载,默认的构造方法被覆盖,此时需要重新建一个默认的构造方法才能继续使用,不然就使用自己新建的构造方法。

2.数组用来存储一组数据类型相同的数据,当需要存储数据类型相同的多个数据时便需要用到数组。

对象数组的操作流程如下:

  1. 语法:类名[] 对象数组名=new 类名[数组长度]
  2. 对象数组的定义:对象数组是用数组的方式来存储同一个类中的多个对象。
  3. 具体操作步骤:

先按照语法声明对象数组,然后实例化,并对对象数组里每个对象的属性进行赋值,然后把对象数组里的每个已经赋值的对象作为实参传递给调用的方法(要注意调用的方法的实参和形参类型要保持一致,也就是说定义该方法的时候形参的类型要和调用时作为实参的对象的类型保持一致)

  1. 动手编程题:

1、输入个人信息,然后打印(注意换行)(10)

uploading.4e448015.gif转存失败重新上传取消

2.用循环写登陆验证,要求用户输错次数在3次以内,每次输错后提示:用户名密码错误,你还有?次输入机会,正确就显示“登陆成功”。当5次输入结束还不正确的,提示:账号已锁,请联系管理员。(10分)

  

3.编写程序,实现猜数小游戏。随机生成一个0~20(包括0和20)的数字,从控制台输入猜测的数字,输出提示太大还是太小,继续猜测,直到猜到为止,游戏过程中,记录猜对所需的次数,游戏结束后公布结果。程序运行结果如图2所示。猜测次数与游戏结果对照见表1所示(次数不同,最后猜到成功之后提示的内容不同)。(15)

表1 猜测次数与游戏结果对照表

次数

结果

1

你太聪明了!

2~5

不错,再接再厉!

大于等于6

要努力啊!

要求:代码规范,有注释,能正确运行出结果。

4、循环录入5位同学的成绩,求出最高分、最低分,以及实现按姓氏查找(对象数组完成,测试时可以不用输入汉字,字母即可)。(15)

uploading.4e448015.gif正在上传…重新上传取消

发布了119 篇原创文章 · 获赞 14 · 访问量 13万+

猜你喜欢

转载自blog.csdn.net/qq_30056341/article/details/105632879