电子商务学院06级《高级语言程序设计(Java)》试卷(A)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

《高级语言程序设计(Java)》试卷A第1页共8页诚信应考,考试作弊将带来严重后果!华南理工大学电子商务学院2006-2007学年第二学期期末考试《高级语言程序设计(Java)》06级试卷A注意事项:1.考前请将密封线内填写清楚;2.所有答案请直接答在答题纸上;3.考试形式:闭卷;4.本试卷共五大题,满分100分,考试时间120分钟。题号一二三四五总分得分评卷人一、填空题(每空2分,共20分)1、根据程序的构成和运行环境的不同,Java源程序分为两类:Application程序和Apllet程序。2、Java编译器的名称是javac.exe;Java的解释器的名称是java.exe。3、默认情况下,整数是integer类型的,浮点字面值是double类型的。4、在向调用的方法传递参数时,java是通过传值调用来传递原语类型参数的,通过___引用调用_________来传递对象参数的。1.5、代码::“if(x0)y=10;elsey=20;”,如用“?”运算符重写,则为:y=x0?10:20;。6、对于如下的声明:voidm(double...x),参数x隐式声明为一个double类型的数组。7、java的I/O系统定义了字节流和__字符流__________两种类型的流。8、void方法的返回方式有两种:到达方法的闭花括号或执行return语句。9、位于异常层次结构顶端的是_______Throwable_____类。_____________________…姓名学号学院专业座位号(密封线内不答题)……………………………………………………密………………………………………………封………………………………………线……………………………………线………………………………………《高级语言程序设计(Java)》试卷A第2页共8页10、将数值字符串,如“23.23”转换为对应的二进制形式,可以使用由基本数据(原语)类型的包装器定义的分析方法。二、选择题(每小题1.5分,共15分)1、下面哪个变量是无效的(D)。A.countB.$countC._countD.6count2、下面各叙述正确的是(C)。A.简化运算符总是需要计算两个操作数。B.Boolean和int不兼容的,但是可以相互强制类型转换。C.char和byte不兼容,但彼此可以强制类型转换。D.char和boolean兼容,且可自动类型转换。3、以下关于抽象类和抽象方法的陈述中,哪一句是错误的(C)。A.含有1个或多个抽象方法的类必须定义为抽象类。B.可以在一个普通类前加缀abstract使之成为抽象类。C.抽象方法允许定义为final的。D.抽象方法不允许有方法体。4、下列有关while循环和do…while循环的陈述,哪个是对的:(D)A、没有区别,这两个结构任何情况下效果一样。B、while循环比do…while循环执行效率高。C、while循环是先循环后判断,所以循环体至少执行一次。D、do…while循环是先循环后判断,所以循环体至少执行一次。5、下列说法哪个正确?(A)A、一个程序可以包含多个源文件。B、一个源文件中只能有一个类。C、一个源文件中可以有多个公共类。D、一个源文件只能供一个程序使用。6、关于构造函数的说法哪个正确?(C)A、一个类只能有一个构造函数。B、一个类可以有多个不同名的构造函数。C、构造函数与类同名。D、构造函数必须自己定义,不能使用父类的构造函数。7、关于继承的说法正确的是:(B)A、子类将继承父类所有的属性和方法。B、子类继承父类的非私有属性和方法。C、子类只继承父类public方法和属性。D、子类只继承父类的方法,而不继承属性。《高级语言程序设计(Java)》试卷A第3页共8页8、下面的关键字哪一个不是Java异常处理的五个关键词之一。(B)A、throwsB、finalC、try/catchD、throw9、当在一个表达式中混合有不同类型的数据时,它们都被转换为同一类型。这是通过使用Java类型升级规则(typepromotionrule)完成的。下面的陈述那一个是不正确的。(B)A、所有的char、byte和short都被升级为int。如果有一个操作数是long类型,整个表达式就全部升级为long类型。B、如果有一个操作数是float类型,整个表达式就全部升级为double类型。C、当计算表达式是类型升级只应用于被操作的值。D、类型升级可能导致某些不可预测的错误。10、下面的Java修饰符中哪一个不是Java的访问指示符(C)。A、publicB、protectedC、abstractD、private三、判断题(正确的打√,错误的打×,每小题1.5分,共15分)1.Java程序中的符号常量(用关键字final修饰的变量)必须在声明的同时完成初始化,否则会导致一个编译错误。(√)2.在Java程序的静态方法体中可以引用非静态数据成员或调用非静态方法成员。(×)3、作用域可以嵌套,并且在内部作用域中声明的变量可以与被嵌套作用域中已声明的变量同名。(×)4、任意多个类可以实现一个接口;一个类可以实现任意多个接口。(√)5、当一个对象引用变量赋给另一个对象引用变量时,两个变量将引用同一个对象,但不会生成对象的副本。(√)6、下面的代码是有效的。(√)intnum=10,sum,count;for(inti=0;inum;i++){sum+=i;count=i;}7、下面的代码都是有效的。(×)byteb;inti;《高级语言程序设计(Java)》试卷A第4页共8页b=10;i=b*b;b=10;b=b*b;8、下面的代码是有效的。(×)for(i=0;i10;i++){intsum;sum=sum+i;}System.out.println(Sumis:+sum);9、下面的代码是有效的。(×)classX{intmeth(inta,intb){...}Stringmeth(inta,intb){...}}10、下面的代码是有效的。(×)classAextendsException{...}classBextendsA{...try{//...}catch(Aexc){...}catch(Bexc){...}}四、写出下面程序的运行结果(每小题5分,共20分)1、publicclassA4_1{publicstaticvoidmain(String[]args){inti,j;for(i=4;i=0;i--){for(j=0;j=i;j++)System.out.print(*);System.out.println();}}}K:1、************《高级语言程序设计(Java)》试卷A第5页共8页***2、classT{inte1=10;inte2=20;inti=0;staticintj=0;T(){i++;j++;}}classTest{publicstaticvoidmain(String[]args){Tt=newT();Tt1=newT();swap(t);System.out.println(e1=+t.e1+e2=+t.e2);System.out.println(t1'si=+t1.i+andt1'sj=+t1.j);}publicstaticvoidswap(Tt){inttemp=t.e1;t.e1=t.e2;t.e2=temp;}}K:2、e1=20e2=10t1'si=1andt1'sj=23、classPwr{doubleb;inte;doubleval;Pwr(doublebase,intexp){b=base;e=exp;val=1;if(exp==0)return;for(;exp0;exp--)val=val*base;}doubleget_pwr(){returnval;《高级语言程序设计(Java)》试卷A第6页共8页}}classDemoPwr{publicstaticvoidmain(Stringargs[]){Pwrx=newPwr(4.0,2);Pwrz=newPwr(5.7,0);System.out.println(x.b+raisedtothe+x.e+poweris+x.get_pwr());System.out.println(z.b+raisedtothe+z.e+poweris+z.get_pwr());}}K:3、4.0raisedtothe2poweris16.05.7raisedtothe0poweris1.04、classExcDemo{publicstaticvoidmain(Stringargs[]){//Here,numerislongerthandenom.intnumer[]={6,8,10,32,64};intdenom[]={2,0,5};for(inti=0;inumer.length;i++){try{System.out.println(numer[i]+/+denom[i]+is+numer[i]/denom[i]);}catch(ArrayIndexOutOfBoundsExceptionexc){//catchtheexceptionSystem.out.println(Nomatchingelementfound.);}catch(Throwableexc){System.out.println(Someexceptionoccurred.);}}}}K:4、6/2is3Someexceptionoccurred.《高级语言程序设计(Java)》试卷A第7页共8页10/5is2Nomatchingelementfound.Nomatchingelementfound.五、Java语言编写程序。(每题10分,共30分)1.ASCII小写字母与大写字母之差为32。因此,把一个小写字母转换为大写字母只需减去32。利用这一点编写一个从键盘读取字符的程序。把所有的小写字母转换为大写字母,把所有的大写字母转换为小写字母,并显示结果。其他字符保持不变。当用户按下句点键时,程序停止。最后,让程序显示发生变化的字母的数量。1、classCaseChg{publicstaticvoidmain(Stringargs[])throwsjava.io.IOException{charch;intchanges=0;System.out.println(Enterperiodtostop.);do{ch=(char)System.in.read();if(ch='a'&ch='z'){ch-=32;changes++;System.out.println(ch);}elseif(ch='A'&ch='Z'){ch+=32;changes++;System.out.println(ch);}}while(ch!='.');System.out.println(Casechanges:+changes);}}2、编程:分别用递归方法和迭代方法(for循环)来计算n的阶层(即求n!)。2、//Thisisarecursivefunction.intfactR(intn){intresult;if(n==1)return1;result=factR(n-1)*n;《高级语言程序设计(Java)》试卷A第8页共8页returnresult;}//Thisisaniterativeequivalent.intfactI(intn){intt,result;result=1;for(t=1;t=n;t++)result*=t;returnresult;}}3、编程:求出1~100之间的所有素数之和(只能被1和本身整除的整数称为素数)。classsushu{publicstaticvoidmain(Stringargs[]){inti,j,flag;intsum=0;for(i=2;i=100;i++){flag=1;for(j

1 / 8
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功