JAVA第一阶段测试题
一. 单项选择题(每题2分,共34分) 1.下列说法不正确的是( )。
A、java 程序的源文件名的后缀名是java B、编译后形成的字节码文件的后缀名class C、java是解释执行的 D、java语言是面向过程的编程语言 2.下面( )是合法的Java标识符。
A、#_pound B、_underscore C、5Interstate D、class 3.下面( )赋值语句不会出现编译警告或错误。
A、float f=1.3; B、char c=\ C、byte b=257; D、int i=10;
4.编译一个定义了两个类和三个方法的Java源程序文件,总共会产生( )个字节码文件。 A、5个字节码文件,以“.java”为扩展名 B、2个字节码文件,以“.java”为扩展名 C、5个字节码文件,以“.class”为扩展名 D、2个字节码文件,以“.class”为扩展名 5.在一个合法的 Java 源程序文件中定义了 3 个类,其中属性为 public 的类至少有( )个。 A、0 B、1 C、2 D、3 6.下列声明哪个是错误的( )
A、int i = 10; B、float f = 1.1; C、double d = 34.4; D、long m = 4990; 7.以下for循环的执行次数是( ) for(int x=0;(x==0)&(x>4);x++){}
A、无限次 B、一次也不执行 C、执行4次 D、执行3次 8.main()方法的返回类型是( )
A、int B、void C、boolean D、static
9.为AB类的一个无形式参数无返回值的方法method书写方法头,使用AB.method 就可以调用该方法( ) A、static void method( ) B、public void method( ) C、final void method( ) D、abstract void method( )
10.在某个类中存在一个方法:void getSort(int x),以下能作为这个方法的重载的声明的是( ) A、public getSort(float x) B、int getSort(int y) C、double getSort(int x,int y) D、void get(int x,int y) 11.下列方法定义中,不正确的是( )
A、float x( int a,int b ) { return (a-b); } B、int x( int a,int b) { return a-b; }
C、int x( int a,int b ) { return a*b; } D、int x(int a,int b) { return 1.2*(a+b); } 12.以下程序执行后的结果是( ) public class Test {
public static void main (String args []) {
int age;
age = age + 1;
System.out.println(\
} }
A、编译,运行后没有输出 B、编译,运行后输出:The age is 1 C、能通过编译,但运行时产生错误 D、不能通过编译
13.设int 型变量 a、b,float 型变量 x、y,char 型变量 ch 均已正确定义并赋值,正确的switch语句是( )
A、switch (x + y) { ...... } B、switch ( ch + 1 ) { ...... } C、switch ch { ...... } D、switch ( a + b ); { ...... } 14.以下由 for 语句构成的循环执行的次数是( ) for ( int i = 0; true ; i++) {}
A、有语法错,不能执行 B、无限次 C、执行1次 D、一次也不执行 15. 在Java中,负责对字节代码解释执行的是( )。
A、垃圾回收器 B、虚拟机 C、编译器 D、多线程机制 16. 在JAVA中,()关键字用来跳出某次循环语句。
A、return B、 continue C、break D、 exit 17. 在JAVA中,无论测试条件是什么,下列( )循环将至少执行一次。 A、for B、do?while C、while D、while?do
二. 填空题(每空1分,共6分)
1.同一个类中多个方法具有相同的方法名,不同的_____________称为方法的重载。
2.在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用_____________字节内存空间,这样,无论是中文字符还是英文字符,都是占用_____________字节内存空间。char类型数据的取值范围是_____________;
3.补全代码:以下方法fun的功能是求两参数的最大值,并返回结果。
__________ fun ( int a, int b ) { __________________; }
三.简答题(共6分)
1.JAVA中的基本数据类型有哪些?4分(每个数据类型0.5分)
2.什么是JAVA中的基本数据类型的自动转换和强制转换?2分
四.程序阅读(每题3分,共30分) 1.下面程序运行的结果是( ) public class Example{
public static void main(String[] args){ int i = 100; switch(i){ case 100:
System.out.print(i); case 200:
System.out.print(i); case 300:
System.out.print(i);
} } }
2. 下面程序的输出结果是: public class Example{
public static void main(String[] args) { int d = 325; int sum = 0; while (d > 0) { int n = d % 10; sum += n; d /= 10; }
System.out.println(sum); } }
3.下面程序片段输出的是:。 int i = 0, j = 9; do {
if(i++ > --j){ break; }
} while(i < 4);
System.out.println(\
4.程序的执行结果是() public class Test {
public static void main(String [] args){ System.out.println(\ } }
5.程序的执行结果是: public class Test {
public static void main(String [] args){
int x = 3;
int y = 4;
if (x++ == y) {
System.out.println(\ } else {
System.out.println(\ }
System.out.println(x); System.out.println(y);
} }
6.下列语句序列执行后,r 的值是: public class Test {
public static void main(String [] args){ 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;
}
} }
7.下面的代码能打印出的结果为: public class Test {
public static void main(String [] args){
int i=1;
switch (i) { case 0:
System.out.println(\break; case 1:
System.out.println(\case 2:
System.out.println(\default:
System.out.println(\} } }
8.给定某java 程序的main 方法如下,该程序的运行结果是:
public static void main ( String[] args) {
boolean boo = true; if (boo == false) {
System.out.println (\}else {
System.out.println (\} }
9.分析下面这段Java代码,它的运行结果是: public class B{
public static void main(String[]args) { int i=12;
System.out.println(i*=++i) ; } }
10.分析下面这段Java代码,它的运行结果是: public class B{
public static void main(String[] args) { int j = 8
int k = 15;
for (int i = 2; i != j; i++) { j -= 2; k++; }
System.out.println( k);
} }
五.编程题(每题8分,共24分)
1.题目:编写一个方法,参数为年份,返回值为布尔类型,作用是判断给定年份是否是闰年。
在主方法中要求用户输入一个年份,调用该方法,如果是闰年 则输出该年份是闰年 否则 输出该年份不是闰年
2. 题目:编写一个方法,参数为一个5位数,返回值为布尔类型,作用是判断它是不是回文数。 即12321是回文数,个位与万位相同,十位与千位相同。
在主方法中要求用户输入一个5位数,调用该方法,如果是回文数 则输出该5位数是回文数 否则 该5位数不是回文数
3. 题目:一个数如果恰好等于它的其他因子之和,这个数就称为 \完数 \。 例如6=1+2+3.编写一个程序输出1-1000之间的所有完数。