《Java 程序设计》模拟试题集锦
中国矿业大学成人教育学院2002~2003学年第二学期
《Java 程序设计》模拟试题(A卷)
站点: 直属站 专业年级:夜大信息00 形式: 闭卷 层次: 专科
考核方式:闭卷
一、单选择题(每小题2分,共20分)
1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。
A. java B. class
C. html D. exe
2、设int型变量x = 1 , y = 2 , z = 3,则表达式 y+=z--/x++ 的值是( D )。
A. 3 B. 3. 5
C. 4 D. 5
3、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方法来完成一些画图操作。
A. start( ) B. stop( )
C. init( ) D. paint( )
4、不允许作为类及类成员的访问控制符的是( C )。
A. public B. private
C. static D. protected
5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。
A. static void method( ) B. public void method( )
C. final void method( ) D. abstract void method( )
6、下列浏览器中,可以运行HTML中的Applet,而忽略其他HTML命令的是( D )。
A. Netscape 3.0 B. Internet Explorer5.0
C. Hot Java D. Appletviewer
7、以下哪一个不是JAVA的标准数据流( D )。
A. 标准输出数据流 B. 标准输入数据流
C. 标准错误数据流 D. 标准运算数据流
8、下面声明数组的写法错误( D )。
A. int a[ ]; B: int[ ] a;
C: int[ ][ ] a[3][ ]; D; int[ ][ ] a[ ][3];
9: 设x为float型变量,y为double型变量,a为int型变量,b为long型变量, c为char型变量,则表达式x+y*a/x+b/y+c的值为( C )类型。
A: int B:long
C: double D:char
10: x=2.5,a=7,y=4,则表达式x+a%3*(int)x%(int)y的值为( C )。
A: 2.5 B:3.5
C: 4.5 D:5.5
二、填空题(每空格1分,共20分)
1、开发与运行Java程序需要经过的三个主要步骤为 编辑源程序 、 编译生成自节码 和解释运行字节。
2、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是 Applet 类的子类并且存储该源程序文件的文件名为 MyApplet.java。
3、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译
器 javac.exe 编译该源程序文件将产生 3 个文件名与类名相同而扩展名为 .class 的字节码文件。
4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占
用 2 字节内存空间,这样,无论是中文字符还是英文字符,都是占用 2 字节内存空间。
5、使用数组时,下标表达式是整型表达式,下标的范围为 0 至 数组长度减1
6、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为 true 和 false 。
8、创建一个名为 MyPackage 的包的语句是 package MyPackage ; 该语句应该放在程序的位置为: 应该在程序第一句 。
9、在Java程序中,通过类的定义只能实现 单 重继承,但通过接口的定义可以实现 多重继承关系。
10、在文件操作中,public String getName()功能是 得到文件名 。
public String getAbsolutePath()功能是 返回文件绝对路径 。
三、简答题(每小题7分,共35分)
1、写出下面程序的功能?
public class Sum
{ public static void main( String args[ ])
{ double sum = 0.0 ;
for ( int i = 1 ; i <= 100 ; i + + )
sum += 1.0/(double) i ;
System.out.println( "sum="+sum );
}
}
答案:计算 1/1+1/2+1/3+...+1/100 的值。
2、写出下面程序的功能?
import java.io.* ;
public class Reverse
{ public static void main(String args[ ])
{ int i , n =10 ;
int a[ ] = new int[10];
for ( i = 0 ; i < n ; i ++ )
try {
BufferedReader br = new BufferedReader(
new InputStreamReader(System.in));
a[i] = Integer.parseInt(br.readLine( )); // 输入一个整数
} catch ( IOException e ) { } ;
for ( i = n-1 ; i >= 0 ; i ―― )
System.out.print(a[i]+" ");
System.out.println( );
}
}
答案:从标准输入(即键盘)读入10个整数存入整型数组a中,然后逆序输出这10个整数。
3、写出下面程序的运行结果
import java.io.*;
public class abc
{ public static void main(String args[ ])
{ AB s = new AB("Hello!","I love JAVA.");
System.out.println(s.toString( ));
}
}
class AB {
String s1;
String s2;
AB( String str1 , String str2 )
{ s1 = str1; s2 = str2; }
public String toString( )
{ return s1+s2;}
}
答案:Hello! I love JAVA.
4、 出下面程序的运行结果
import java.io.* ;
public class abc
{
public static void main(String args[ ])
{ int i , s = 0 ;
int a[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70 , 80 , 90 };
for ( i = 0 ; i < a.length ; i ++ )
if ( a[i]%3 = = 0 ) s += a[i] ;
System.out.println("s="+s);
}
}
答案:s = 180
5、出下面程序的运行结果
class change{
void changeint(int x){
x++;
}
public static void main(String args[]){
int a=2;
System.out.println("Before changed: "+"a="+a);
change cxz=new change();
cxz.changeint(a);
System.out.println("After changed: "+"a="+a);
}
}
答案:Before changed: a=2
After changed: a=2
四、使用Java语言编写程序题。(共25分,第1题10分,第2题15分)
1、 打印出所有的“水仙花数”,所谓的“水仙花数”是指一个三位数,其各位数字的立方和等于其本身。
例如:153是个“水仙花数”,因为153=13+53+33
class sxh{
public static void main(String args[]){
int first,second,third;
for(int a=100;a<1000;a++){
first=a/100;
second=a/10%10;
third=a%10;
if(a==first*first*first+second*second*second+third*third*third){
System.out.println(a);
}
}
}
}
2、 编写一种从小到大排序程序。例如:a数组中有10个数。分别是{3,2,5,21,9,10,7,16,8,20},经过排序算法后,a数组变为{2,3,5,7,8,9,10,16,20,21,}。
class paixu{
public static void main(String args[]){
int a[]={3,2,5,21,9,10,7,16,8,20};
int b,c,d;
System.out.println("befor sorted");
for(b=0;b<10;b++){
System.out.print(a[b]+" ");
}
System.out.println("");
for(b=1;b<=9;b++)
for(c=0;c<=9-b;c++){
if(a[c]>a[c+1]){
d=a[c];
a[c]=a[c+1];
a[c+1]=d;
}
}
System.out.println("after sorted");
for(b=0;b<10;b++){
System.out.print(a[b]+" ");
}
System.out.println("");
}
}
中国矿业大学成人教育学院2002~2003学年第二学期
《Java 程序设计》模拟试题(B卷)
站点: 直属站 专业年级:夜大信息00 形式: 闭卷 层次: 专科
考核方式:闭卷
一、单选择题(每小题2分,共10分)
1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。
A. .java B. .class C. .html D. .exe
2、设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( )。
A. 3 B. 3. 5 C. 4 D. 5
3、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( )方法来完成一些画图操作。
A. start( ) B. stop( )
C. init( ) D. paint( )
4、不允许作为类及类成员的访问控制符的是( )。
A. public B. private
C. static D. protected
5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。
A. static void method( ) B. public void method( )
C. final void method( ) D. abstract void method( )
二、填空题(每空格1分,共20分)
1、开发与运行Java程序需要经过的三个主要步骤为 、 和 。
2、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是 的子类并且存储该源程序文件的文件名为 。
3、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器编译该源程序文件将产生 个文件名与类名相同而扩展名为 的字节码文件。
4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用 字节内存空间,这样,无论是中文字符还是英文字符,都是占用 字节内存空间。
5、设 x = 2 ,则表达式 ( x + + )/3 的值是 。
6、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为 和 。
7、 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。 方法是不能被当前类的子类重新定义的方法。
8、创建一个名为 MyPackage 的包的语句是 ,
该语句应该放在程序的位置为: 。
9、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是 。
int s = 0 ;
for ( int i = 0 ; i < MyIntArray.length ; i + + )
if ( i % 2 = = 1 )
s += MyIntArray[i] ;
System.out.println( s );
10、在Java程序中,通过类的定义只能实现 重继承,但通过接口的定义可以实现 重继承关系。
三、写出下列程序完成的功能。(每小题5分,共20分)
1、public class Sum
{ public static void main( String args[ ])
{ double sum = 0.0 ;
for ( int i = 1 ; i <= 100 ; i + + )
sum += 1.0/(double) i ;
System.out.println( "sum="+sum );
}
}
2、 import java.io.* ;
public class Reverse
{ public static void main(String args[ ])
{ int i , n =10 ;
int a[ ] = new int[10];
for ( i = 0 ; i < n ; i ++ )
try {
BufferedReader br = new BufferedReader(
new InputStreamReader(System.in));
a[i] = Integer.parseInt(br.readLine( )); // 输入一个整数
} catch ( IOException e ) { } ;
for ( i = n-1 ; i >= 0 ; i ―― )
System.out.print(a[i]+" ");
System.out.println( );
}
}
3、 import java.awt.*;
public class abc
{ public static void main(String args[])
{ new FrameOut(); }
}
class FrameOut extends Frame // Frame为系统定
{ Button btn; // 义的窗框类
FrameOut( )
{ super("按钮");
btn = new Button("按下我");
setLayout(new FlowLayout( ));
add(btn);
setSize(300,200);
show( );
}
}
4、import java.io.*;
public class abc
{ public static void main(String args[])
{ SubClass sb = new SubClass( );
System.out.println(sb.max( ));
}
}
class SuperClass
{ int a = 10 , b = 20 ; }
class SubClass extends SuperClass
{ int max( ) { return ((a>b)?a:b); } }
四、写出下面程序的运行结果(每小题10分,共30分)
1、 import java.io.*;
public class abc
{ public static void main(String args[ ])
{ AB s = new AB("Hello!","I love JAVA.");
System.out.println(s.toString( ));
}
}
class AB {
String s1;
String s2;
AB( String str1 , String str2 )
{ s1 = str1; s2 = str2; }
public String toString( )
{ return s1+s2;}
}
2、 import java.io.* ;
public class abc
{
public static void main(String args[ ])
{ int i , s = 0 ;
int a[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70 , 80 , 90 };
for ( i = 0 ; i < a.length ; i ++ )
if ( a[i]%3 = = 0 ) s += a[i] ;
System.out.println("s="+s);
}
}
3、class father{
void speak(){
System.out.println("I am father!");
}
}
class son extends father{
void speak(){
super.speak();
System.out.println("I am son!");
}
public static void main(String args[]){
son cxz=new son();
cxz.speak();
}
}
五、使用Java语言编写程序。(每小题10分,共20分)
1、编写一个字符界面的Java Application 程序,接受用户输入的10个整数,并输出这10个整数的最大值和最小值。
2、编写一个完整的Java Applet 程序使用复数类Complex验证两个复数 1+2i 和3+4i 相加产生一个新的复数 4+6i 。
复数类Complex必须满足如下要求:
(1) 复数类Complex 的属性有:
RealPart : int型,代表复数的实数部分
ImaginPart : int型,代表复数的虚数部分
(2) 复数类Complex 的方法有:
Complex( ) : 构造函数,将复数的实部和虚部都置0
Complex( int r , int i ) : 构造函数,形参 r 为实部的初值,i为虚部的初值。
Complex complexAdd(Complex a) : 将当前复数对象与形参复数对象相加,所得的结果仍是一个复数值,返回给此方法的调用者。
String ToString( ) : 把当前复数对象的实部、虚部组合成 a+bi 的字符串形式,其中a 和 b分别为实部和虚部的数据。
本文地址:
http://www.45fan.com/a/question/44156.html