《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案3Word文档下载推荐.docx
《《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案3Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案3Word文档下载推荐.docx(9页珍藏版)》请在冰豆网上搜索。
用2字节内存空间,这样,无论是中文字符还是英文字符,都是占
用2字节内存空间。
5、设x=2,则表达式(x++)/3的值是0。
6、若x=5,y=10,则x<
y和x>
=y的逻辑值分别为true和false。
7、抽象(abstract)方法方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。
最终(final)方法方法是不能被当前类的子类重新定义的方法。
8、创建一个名为MyPackage的包的语句是packageMyPackage;
,
该语句应该放在程序的位置为:
应该在程序第一句。
9、设有数组定义:
intMyIntArray[]={10,20,30,40,50,60,70};
则执行以下几个语句后的输出结果是120。
ints=0;
for(inti=0;
i<
MyIntArray.length;
i++)
if(i%2==1)s+=MyIntArray[i];
System.out.println(s);
10、在Java程序中,通过类的定义只能实现单重继承,但通过接口的定义可以实现多重继承关系。
三、写出下列程序完成的功能。
(每小题5分,共20分)
1、publicclassSum
{publicstaticvoidmain(Stringargs[])
{doublesum=0.0;
for(inti=1;
=100;
sum+=1.0/(double)i;
System.out.println("
sum="
+sum);
}
}
2、importjava.io.*;
publicclassReverse
{publicstaticvoidmain(Stringargs[])
{inti,n=10;
inta[]=newint[10];
for(i=0;
n;
i++)
try{
BufferedReaderbr=newBufferedReader(
newInputStreamReader(System.in));
a[i]=Integer.parseInt(br.readLine());
//输入一个整数
}catch(IOExceptione){};
for(i=n-1;
i>
=0;
i――)
System.out.print(a[i]+"
"
);
System.out.println();
3、importjava.awt.*;
publicclassabc
{publicstaticvoidmain(Stringargs[])
{newFrameOut();
classFrameOutextendsFrame//Frame为系统定
{Buttonbtn;
//义的窗框类
FrameOut()
{super("
按钮"
btn=newButton("
按下我"
setLayout(newFlowLayout());
add(btn);
setSize(300,200);
show();
4、importjava.io.*;
{SubClasssb=newSubClass();
System.out.println(sb.max());
classSuperClass
{inta=10,b=20;
classSubClassextendsSuperClass
{intmax(){return((a>
b)?
a:
b);
}}
四、写出下面程序的运行结果(每小题10分,共30分)
1、importjava.io.*;
publicclassabc
{publicstaticvoidmain(Stringargs[])
{ABs=newAB("
Hello!
"
"
IloveJAVA."
System.out.println(s.toString());
classAB{
Strings1;
Strings2;
AB(Stringstr1,Stringstr2)
{s1=str1;
s2=str2;
publicStringtoString()
{returns1+s2;
{
publicstaticvoidmain(Stringargs[])
{inti,s=0;
inta[]={10,20,30,40,50,60,70,80,90};
a.length;
if(a[i]%3==0)s+=a[i];
System.out.println("
s="
+s);
3、importjava.io.*;
)
{System.out.println("
a="
+a+"
\nb="
+b);
{intc;
SubClass(intaa,intbb,intcc)
{super(aa,bb);
c=cc;
classSubSubClassextendsSubClass
{inta;
SubSubClass(intaa,intbb,intcc)
{super(aa,bb,cc);
a=aa+bb+cc;
voidshow()
+b+"
\nc="
+c);
五、使用Java语言编写程序。
(每小题10分,共20分)
1、编写一个字符界面的JavaApplication程序,接受用户输入的10个整数,并输出这10个整数的最大值和最小值。
2、编写一个完整的JavaApplet程序使用复数类Complex验证两个复数1+2i和3+4i相加产生一个新的复数4+6i。
复数类Complex必须满足如下要求:
(1)复数类Complex的属性有:
RealPart:
int型,代表复数的实数部分
ImaginPart:
int型,代表复数的虚数部分
(2)复数类Complex的方法有:
Complex():
构造函数,将复数的实部和虚部都置0
Complex(intr,inti):
构造函数,形参r为实部的初值,i为虚部的初值。
ComplexcomplexAdd(Complexa):
将当前复数对象与形参复数对象相加,所得的结果仍是一个复数值,返回给此方法的调用者。
StringToString():
把当前复数对象的实部、虚部组合成a+bi的字符串形式,其中a和b分别为实部和虚部的数据。
《JAVA语言程序设计》期末考试模拟试题
参考答案及评分标准
1、B2、A3、D4、C5、A
1、编辑源程序、编译生成字节码、解释运行字节码
2、Applet、MyApplet
3、javac.exe、3、.class
4、2、2
5、0
6、true、false
7、抽象(abstract)方法、最终(final)方法
8、packageMyPackage;
应该在程序第一句。
9、120
10、单、多
1、计算1/1+1/2+1/3+...+1/100的值。
2、从标准输入(即键盘)读入10个整数存入整型数组a中,然后逆序输出这10个整数。
3、创建一个标题为"
的窗框,窗框中显示有"
字样的按钮。
4、求两个数的最大值。
1、Hello!
IloveJAVA.
2、s=180
3、a=60
b=20
c=30
1、参考程序如下:
importjava.io.*;
publicclassabc
{
publicstaticvoidmain(Stringargs[])
{inti,n=10,max=0,min=0,temp=0;
try{
max=min=Integer.parseInt(br.readLine());
for(i=2;
=n;
i++){
temp=Integer.parseInt(br.readLine());
if(temp>
max)max=temp;
if(temp<
min)min=temp;
max="
+max+"
\nmin="
+min);
2、参考程序如下:
importjava.applet.*;
importjava.awt.*;
publicclassabcextendsApplet
Complexa,b,c;
publicvoidinit()
a=newComplex(1,2);
b=newComplex(3,4);
c=newComplex();
publicvoidpaint(Graphicsg)
c=plexAdd(b);
g.drawString("
第一个复数:
+a.toString(),10,50);
第二个复数:
+b.toString(),10,70);
两复数之和:
+c.toString(),10,90);
classComplex
intRealPart;
//复数的实部
intImaginPart;
//复数的虚部
Complex(){RealPart=0;
ImaginPart=0;
}
Complex(intr,inti)
{RealPart=r;
ImaginPart=i;
ComplexcomplexAdd(Complexa)
Complextemp=newComplex();
//临时复数对象
temp.RealPart=RealPart+a.RealPart;
temp.ImaginPart=ImaginPart+a.ImaginPart;
returntemp;
publicStringtoString()
{return(RealPart+"
+"
+ImaginPart+"
i"