华师JAVA作业
- 格式:doc
- 大小:184.50 KB
- 文档页数:32
华南师范大学计算机学院2007/2008学年(上)学期期末考试试卷《Java程序设计》试卷(A卷)专业:年级姓名:学号:班级:一.选择(每个1分,共10分)1.Which of the following are Java keywords?CA. SystemB. exitC. newD. instanceOf2.Which of the following statements are true?A. A byte can represent between 0 to 256B. A byte can represent between -128 to 127C. A byte can represent between -127 to 128D. A char can represent between -2x2 pow 16 2 x2 pow 16 –13. Which of the following statements are true?A. An interface can only contain method and not variablesB. Interfaces cannot have constructorsC. A class may extend only one other class and implement only one interfaceD. Interfaces are the Java approach to addressing its lack of multiple inheritance, but require implementing classes to create the functionality of the Interfaces.4. 以下类中是Container的子类的是A.JList B.JCanvasC.JCheckBox D.JPanel5. protected限定成员变量,以下说法正确的是( )A. 可以被三种类所引用: 该类自身、与它在同一个包中的其他类、在其他包中的该类的子类B. 可以被两种类访问和引用: 该类本身、该类的所有子类C. 只能被该类自身所访问和修改D. 只能被同一个包中的类访问6. 关于数组的说法,以下正确的是()A. int[] x=new int[20]建立了一个20个元素的整数数组B. 数组声明时可以不限定大小C. 数组大小在运行时可以动态改变D. 跟C的规定相同7.以下正确的说法是A. Applet类中不能有main方法B.Applet类是java.awt中的类C.Applet类是Container的间接子类D.Applet类不是容器类8.以下那种布局是JFrame的默认布局A.空布局B.BorderLayout C.FlowLayout D.CardLayout9.对于绘图类Graphics、Grphics2D,正确的说法是:A.Graphics是抽象类B.Graphics2D对象也可以当成Graphics对象使用C.Graphics类中包含Graphics2D中定义的全部方法D.Graphics2D是Graphics中二维绘图操作的具体实现类10. 关于流的说法,正确的是A.流专门用于描述跟外设的I/O操作B.File类是专门用来文件流式读写操作的C.流可以描述任何数据处理过程D.字符流只能处理Unicode字符数据二.填空题(每个1.5分,共30分)1.java语言使用的字符集是(UNICODE )。
作业1.第1题应用程序Test.java的源程序如下,在命令行键入:java Test aaa bb c,则输出的结果是 ( )。
public class Test{ public static void main(String args[]){ int k1=args.length;int k2=args[1].length();System.out.print(k1+" "+k2); }}A.3 2B.1 2C.1 3D.3 3答案:A您的答案:A题目分数:2.0此题得分:2.02.第2题有整型数组:int[] x={12,35,8,7,2};,则调用方法Arrays.sort(x)后,数组x中的元素值依次是( ).A.2 7 8 12 35B.12 35 8 7 2C.35 12 8 7 2D.8 7 12 35 2答案:A您的答案:A题目分数:2.0此题得分:2.03.第3题下面程序段执行后b的值是( )。
String str = "java";boolean b = str instanceof StringA.0B.trueC.1D.false答案:B您的答案:B题目分数:2.0此题得分:2.04.第4题下面的程序段执行后输出的结果是( )。
StringBuffer buf=new StringBuffer("Beijing2008");buf.insert(7,"@");System.out.println(buf.toString());A.Beijing@2008B.@Beijing2008C.Beijing2008@D.Beijing#2008答案:A您的答案:A题目分数:2.0此题得分:2.05.第5题下面是关于类及其修饰符的一些描述,不正确的是:()A.abstract类只能用来派生子类,不能用来创建abstract类的对象。
《JAVA语言程序设计》在线练习1.在Java中,开发图形用户界面的程序需要使用一个系统提供的类库,这个类库就是()包。
B.java.awt2.下列操作中,不属于Applet安全限制的是:()(1 分)D.与同一个页面中的Applet通信3.在Java应用程序的主类体中,main()函数头是非法的?D.public void main(String[] args)4.下面哪个语句是创建数组的正确语句?()C.float [][]f = new float[6][6]5.下列关于方法覆盖不正确的是___。
A.方法覆盖和方法重载都是定义相同方法名的方法,本质上是一致的6.下列程序段执行后的结果是( )。
String s=new String("abcdefg");for(int ;i=0;i <=6;i=i+2){ System.out.print(s.charAt(i));} C.aceg7.以下数据类型定义正确的是:()B.String s = “a”8.下列为合法类名的是:()(1 分)C.WatchTV9.下列为合法类名的是___。
C.GraduateStudent10.在Java中,存放字符串常量的对象属于()类对象。
(1 分)B.String11.在Java中,存放字符串常量的对象属于________类对象。
B.String12.给出下列代码,则数组初始化中哪项是不正确的?byte[]array1,array2[];byte array3[][];byte [][]array4,array5; A.array2 = array113.Java语言是____。
D.面向对象的解释型高级编程语言14.在Applet的关键方法中,下列哪个方法是关闭浏览器以释放Applet占用的所有资源?D.destroy()15.容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变?()B.FlowLayout16.在编写异常处理的Java程序中,每个catch语句块都应该与( )语句块对应,使得用该语句块来启动Java 的异常处理机制。
.定义类A和类B如下. (5分)class A{int a=1;double d=2.0;void show( ){System.out.println("Class A: a="+a +"\td="+d);}}class B extends A{float a=3.0f;String d="Java program.";void show( ){super.show( );System.out.println("Class B: a="+a +"\td="+d);}}(1) 若在应用程序的main方法中有以下语句:A a=new A();a.show();则输出的结果如何?(2分)(2) 若在应用程序的main方法中定义类B的对象b:A b=new B();b.show();则输出的结果如何?(3分)答案:(1) Class A: a=1 d=2.0(2) Class A: a=1 d=2.0Class B: a=3.0 d=Java program.阅读程序,回答以下问题1: public class Output1 {2: public static void main(String arge[]) {3: int i=0;4: for ( char ch = 97; ch<113; ch++,i++) { 5: if( i % 8 == 0 )6: System.out.println(" "); 7: System.out.print("\t" +ch);8: }9: }10: }(1)程序第5、6行的if语句的功能是什么?(2分)(2)程序输出的结果有几行?(3分)答案:(1)每打印8个字符,则换行。
(2)输出的结果有2行1: public class A {2: public static void main(String[] args) {3: long first=1,second=1,third;4: System.out.print(first + " " + second + " "); 5: for(int i = 3; i <= 6; i++) {6: third = first + second;7: System.out.print(third + " ");8: first = second;9: second = third;10: }11: }12: }(1)程序第5~10行的for循环共循环几次? (2分)(2)程序输出的结果是什么?(3分)答案:(1)4次。
18秋华师《JAVA编程初步》在线作业-118秋作业试卷参考答案一、单选题共50题,100分1、编译运行以下程序后,关于输出结果的说明正确的是()public class Conditional{ public static void main(String args[ ]){ int x=4; System.out.println("value is "+ ((x>4) ? 99.9 :9)); } }A输出结果为:value is 99.99B输出结果为:value is 9C输出结果为:value is 9.0D编译错误这门答案选择:C2、什么技术可以把Java程序编译生成与具体平台有关的本机执行代码,来提高效率?AJVMBJITCJINIDCROBO这门答案选择:B3、关于以下程序段的说法,正确的是()1:class MyListener implements 2:ActionListener,ItemListener{ 3: public void actionPerformed(ActionEvent ae){ 4:System.out.println("Action");} 5: public void itemStateChanged(ItemEvent ie){ 6:System.out.println("Item"); 7: } 8:}A可通过编译B第2行产生编译错误C第3行产生编译错误D第5行产生编译错误这门答案选择:A4、错误提示内容:HelloWorldApp.java 3:Method printl(ng.String) not found in class java.io.PrintSream. ,请判断是下列哪个方面出了问题?A编译器的路径变量设置不正确B程序中有错误的语句C文件名和公有类名不匹配Dmain方法缺少statci和public修饰这门答案选择:B5、Thread的什么方法只允许同等优先级的线程运行。
若包mylib存放在环境变量classpath指明的路径下,把mylib包中的类A导入程序中的语句是________。
答案: import mylib.A方法调用Math.pow(5,2)返回的结果是_______。
答案: 25.0设x = 2 ,则表达式( x + + ) * 3 的值是__________________。
答案:6设有整型数组的定义:int a[]=new int[8]; ,则a.length的值为_____。
答案: 8Java语言中关键字interface用来定义一个_____。
答案: 接口Java小程序的源文件名为App1.java,为运行该小程序,应将小程序嵌入网页文件中,其html的关键代码如下,请将其补充完整: < APPLET CODE= WIDTH=250 HEIGHT=250>答案: App1.class顺序执行以下两个语句的输出结果是:___________________。
String s = " 我喜欢学习Java!" ; System.out.println(s.length( ));答案: 10若有类定义: class B extends A{ … } 则类B是类A的______。
答案: 子类_____是由若干个称为结点的对象组成的一种数据结构,每个结点有一个数据和下一个结点对象的引用。
答案: 链表定义字符串:String s = new StringBuffer().append(" a" ).append(" b" ).append("c" ).toString();,则s的值是_____。
答案: abc__________方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。
?????????方法是不能被当前类的子类重新定义的方法。
《JAVA语言程序设计》第1题下列叙述中,正确的是________。
A、Java语言的标识符是区分大小写的B、源文件名与public类名可以不相同C、源文件名其扩展名为.jarD、源文件中public类的数目不限第2题下面哪个语句是创建数组的正确语句?()A、float f[6][6] = new float[6][6]B、float f[][] = new float[][6]C、float [][]f = new float[6][6]D、float [] f = new float[6][]第3题有整型数组:int[] x={12,35,8,7,2};,则调用方法Arrays.sort(x)后,数组x中的元素值依次是( ).A、2 7 8 12 35B、12 35 8 7 2C、35 12 8 7 2D、8 7 12 35 2 第4题下列关于方法覆盖不正确的是________。
A、方法覆盖和方法重载都是定义相同方法名的方法,本质上是一致的B、方法覆盖只能发生在子类对父类的继承中C、方法覆盖充分体现了Java语言的多态性D、方法返回值类型不同时也能实现方法覆盖第5题Java为移动设备提供的平台是_______。
A、J2MEB、J2SEC、J2EED、JDK5.0第6题下面程序段执行后b的值是( )。
String str = "java";boolean b = str instanceof StringA、0B、trueC、1D、false第7题下列哪个类声明是正确的_______。
A、abstract final class HI{...}B、abstract private move(){...}C、protected private number{...}D、public abstract class Car{...}第8题对于构造方法,下列叙述不正确的是_______。
华师《Java语言程序设计》在线作业-0004下列语句序列执行后,i 的值是( )。
int i=8, j=16; if( i-1 > j ) i--; else j--;A:15B:16C:7D:8答案:D关于类和对象的叙述正确的是( )A:Java的类分为两大部分:系统定义的类和用户自定义的类B:类的静态属性和全局变量的概念完全一样,只是表达形式不同C:类的成员至少有一个属性和一个方法D:类是对象的实例化答案:A设 i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是( ) A:i = i + 2B:a[0] = 7;C:i++ - --j;D:a(0) = 66;答案:B下面哪几个函数是public void example(){...}的重载函数( )A:public int example( int m){...}B:public int example(){...}C:public void example2(){...}D:public int example ( int m, float f){...}答案:D不使用static修饰符限定的方法称为成员方法,下列哪一个说法是不正确的( ) A:成员方法可以直接调用父类的成员方法B:成员方法可以直接调用父类的类方法C:成员方法不可以直接调用其他类的成员方法D:成员方法可以直接调用本类的类方法答案:A已知表达式int m[] = {0, 1, 2, 3, 4, 5, 6 }; 下面哪个表达式的值与数组下标量总数相等( )A:m.length()B:m.lengthC:m.length()+1D:m.length+1答案:B下面哪个为构造函数的特性定义( )A:在类中声明构造函数时,名称须与类名相同B:具有重载特性,可以建立多个相同名称C:使用类建立新对象时,会自动执行构造函数,因此在构造函数内设定变量的初始值进行内存的分配D:其他选项都选答案:D下列程序段执行后的结果是( )。
1.第7题Java语言具有许多优点和特点,下列选项中哪个反映了Java程序并行机制的特点?A.安全性B.多线程C.跨平台D.可移植答案:B您的答案:B题目分数:2.0此题得分:2.02.第8题下列有关Java程序的说法中错误的是:()A.由于Java程序是解释执行的,所以执行前不需要进行编译。
B.程序执行过程中需要的所有类都是通过字节码校验程序装入的。
C.代码的运行是由Java运行环境中的解释器完成的。
D.在缺省的安全配置条件下,Applet不能访问任何本地资源。
答案:A您的答案:A题目分数:2.0此题得分:2.03.第9题在Java中,开发图形用户界面的程序需要使用一个系统提供的类库,这个类库就是()包。
A.java.ioB.java.awtC.java.appletD.java.awt.event答案:B您的答案:D题目分数:2.0此题得分:0.04.第10题下列关于Frame类的说法不正确的是A.Frame是Window类的直接子类B.Frame对象显示的效果是一个窗口C.Frame被默认初始化为可见D.Frame的默认布局管理器为BorderLayout答案:C您的答案:C题目分数:2.0此题得分:2.05.第11题Java为移动设备提供的平台是_______。
A.J2MEB.J2SEC.J2EED.JDK5.0答案:A您的答案:A题目分数:2.0此题得分:2.06.第12题下列关于继承的哪项叙述是正确________。
A.在java中允许多继承B.在java中一个类只能实现一个接口C.在java中一个类不能同时继承一个类和实现一个接口D.java的单一继承使代码更可靠答案:D您的答案:D题目分数:2.0此题得分:2.07.第13题有整型数组:int[] x={12,35,8,7,2};,则调用方法Arrays.sort(x)后,数组x 中的元素值依次是( ).A.2 7 8 12 35B.12 35 8 7 2C.35 12 8 7 2D.8 7 12 35 2答案:A您的答案:A题目分数:2.0此题得分:2.08.第14题在编写Java Application程序时,若需要使用到标准输入输出语句,必须在程序的开头写上( )语句A.import java.awt.*B.import java.applet.AppletC.import java.io.*D.import java.awt.Graphics答案:C您的答案:C题目分数:2.0此题得分:2.09.第15题下列声明的方法强制要求子类来实现的是:()A.public double methodda()B.static void methoda(double d1){}C.public native double methoda()D.abstract public void methoda()答案:D您的答案:D题目分数:2.0此题得分:2.010.第16题如果希望所有的控件在界面上均匀排列,应使用下列那种布局管理器?()A.BoxLayoutB.GridLayoutC.BorderLayoutD.FlowLouLayout答案:B您的答案:B题目分数:2.0此题得分:2.011.第17题下列说法哪个是正确的?()A.不需定义类,就能创建对象B.属性可以简单变量,也可以是一个对象C.属性必须是简单变量D.对象中必有属性和方法答案:B您的答案:B题目分数:2.0此题得分:2.012.第18题下面的语句的作用是:()。
华师《Jv语言程序设计》在线作业一、单选题(共 15 道试题,共 30 分。
)1. 下列语句序列执行后,i 的值是( )。
int i=8, j=16; if( i-1 > j ) i--; ls j--; . 15. 16. 7. 8正确答案:2. 下面哪个为构造函数的特性定义( ). 在类中声明构造函数时,名称须与类名相同. 具有重载特性,可以建立多个相同名称. 使用类建立新对象时,会自动执行构造函数,因此在构造函数内设定变量的初始值进行内存的分配. 以上都是正确答案:3. 下列哪个类声明是正确的( ). strt finl lss Hl{…}. strt privt mov(){…}. prott privt numr. puli strt lss r{…}正确答案:4. 以下有关构造方法的说法,正确的是( ). 一个类的构造方法可以有多个. 构造方法在类定义时被调用. 构造方法只能由对象中的其它方法调用. 构造方法可以和类同名,也可以和类名不同正确答案:5. 在Jv中,表示换行符的转义字符是( ). \n. \f. 'n'. \正确答案:6. 若已定义 yt[ ] x= {11,22,33,-66} ; 其中0≤k≤3,则对x数组元素错误的引用是( ) . x[5-3]. x[k]. x[k+5]. x[0]正确答案:7. 下列程序段的输出结果是 ( )。
puli lss oprtorsnxprssions { voi stringPlus() { int x=3,y=4,z=5; Systm.out.println(x+y+z); } }. xyz. x+y+z. 12. 以上答案均不正确正确答案:8. 下列关于for循环和whil循环的说法中哪个是正确的( ). whil循环能实现的操作,for循环也都能实现. whil循环判断条件一般是程序结果,for循环判断条件一般是非程序结果. 两种循环任何时候都可替换. 两种循环结构中都必须有循环体,循环体不能为空正确答案:9. 关于Jv中数据类型叙述正确的是( ). 整型数据在不同平台下长度不同. ooln类型数据只有2个值,tru和fls. 数组属于简单数据类型. Jv中的指针类型和语言的一样正确答案:10. 下列程序段执行后的结果是( )。
以下哪个方法仅在Applet程序被创建和首次被载入支持Java的浏览器时被调用。
( )A.paint()B.init()C.action()D.start()答案:B下列有关Java程序的说法中错误的是:()A.由于Java程序是解释执行的,所以执行前不需要进行编译。
B.程序执行过程中需要的所有类都是通过字节码校验程序装入的。
C.代码的运行是由Java运行环境中的解释器完成的。
D.在缺省的安全配置条件下,Applet不能访问任何本地资源。
答案:A以下的变量定义语句中,合法的是( )。
A.float $_*5= 3.4FB.byte b1= 15678C.double a =Double. MAX_VALUED.int _abc_ = 3721L答案:C应用程序的main方法中有以下语句,则输出的结果是 ( )。
String s="java@123456@";int n=s.indexOf("@");int k=s.indexOf("@",5);String s2=s.substring(n+1,k);System.out.println(s2);A.123456B.javaC.@D.5答案:A有整型数组:int[] x={12,35,8,7,2};,则调用方法Arrays.sort(x)后,数组x中的元素值依次是( ).A.2 7 8 12 35B.12 35 8 7 2C.35 12 8 7 2D.8 7 12 35 2答案:A在编写Java Application程序时,若需要使用到标准输入输出语句,必须在程序的开头写上( )语句A.import java.awt.*B.import java.applet.AppletD.import java.awt.Graphics答案:C以下哪个约束符可用于定义成员常量?()A.staticB.finalC.abstractD.以上约束符都不能用答案:B在Applet的关键方法中,下列哪个方法是关闭浏览器以释放Applet占用的所有资源?A.init()B.start()C.paint()D.destroy()答案:D如下标识符中()是有效的?A.3LongStringB.okButtonC.¥intD.byte答案:B下列的变量定义中,错误的是( )A.int iB.int I = Integer.MAX_VALUEC.static int i=100D.int 123_$答案:D在编写Java Applet程序时,若需要对发生的事件作出响应和处理,一般需要在程序的开头写上( )语句。
A.import java.awt.*B.import java.applet.*C.import java.io.*D.import java.awt.event.*答案:D下面哪个语句是创建数组的正确语句?()A.float f[6][6] = new float[6][6]B.float f[][] = new float[][6]C.float [][]f = new float[6][6]D.float [] f = new float[6][]String s1="AbcD";String s2=s1.toLowerCase();A.AB.ABCDC.aBCdD.abcd答案:D若在某一个类定义中定义有如下的方法: abstract void performDial( );该方法属于()。
A.本地方法B.最终方法C.解态方法D.抽象方法答案:D下列说法哪个是正确的?()A.一个源文件中可以有一个以上的公共类B.一个源文件只能供一个程序使用C.一个源文件中只能有一个方法D.一个程序可以包含多个源文件答案:D下面是有关子类继承父类构造函数的描述,其中正确的是( )。
A.创建子类的对象时,先调用子类自己的构造函数,然后调用父类的构造函数。
B.子类无条件地继承父类不含参数的构造函数。
C.子类必须通过super关键字调用父类的构造函数。
D.子类无法继承父类的构造函数。
答案:C下面的程序编译运行后输出的结果是( )。
public class A implements Runnable{ public static void main(String argv[]){ A a = new A();Thread t = new Thread(a);t.start(); }public void run() { while(true){ try{ Thread.currentThread().sleep(1000); }catch(InterruptedException e){ System.out.println(e.toString()); }System.out.println("looping while"); } } }A.在屏幕上重复输出" looping while"B.在屏幕上输出一次" looping while" 。
C.没有结果输出。
D.以上说法都错误答案:A设有下面两个赋值语句:a = Integer.parseInt(“1024”);b = Integer.valueOf(“1024”).intValue();下述说法正确的是()。
A.a是整数类型变量,b是整数类对象B.a是整数类对象,b是整数类型变量C.a和b都是整数类对象并且它们的值相等D.a和b都是整数类型变量并且它们的值相等答案:D下列关于接口的说法哪个是正确?()A.接口和抽象类是同一回事B.一个类不可以实现多个接口C.接口间不能有继承关系D.实现一个接口必须实现接口的所有方法答案:D下列哪个修饰符可以使在一个类中定义的成员变量只能被同一包中的类访问?A.privateB.无修饰符C.publicD.protected答案:B下面关于Java Applet的说法正确的是?A.Applet也需要main()方法B.Applet必须继承自java.awt.AppletC.Applet能访问本地文件D.Applet程序不需要编译答案:B在Java应用程序的主类体中,main()函数头是非法的?A.public static void main(String[] args)B.public static void main(String args[])C.public static void main(String [] arg)D.public void main(String[] args)答案:D以下字符常量中不合法的是( )。
A.' |'B.' \' 'C." \n"D.' 我'答案:C{ public static void main(String args[]){ int k1=args.length;int k2=args[1].length();System.out.print(k1+" "+k2); }}A.3 2B.1 2C.1 3D.3 3答案:A下面程序段执行后b的值是( )。
String str = "java";boolean b = str instanceof StringA.0B.trueC.1D.false答案:B下面是关于类及其修饰符的一些描述,不正确的是:()A.abstract类只能用来派生子类,不能用来创建abstract类的对象。
B.final类不但可以用来派生子类,也可以用来创建final类的对象。
C.abstract不能与final同时修饰一个类。
D.abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法。
答案:B对于构造函数,下列叙述不正确的是()A.构造函数是类的一种特殊函数,它的方法名必须与类名相同B.构造函数的返回类型只能是void型C.构造函数的主要作用是完成对类的对象的初始化工作D.一般在创建新对象时,系统会自动调用构造函数答案:B关于Java的包的叙述中正确的是:()A.Java的包可以有任意多层的子包B.包是多个相关的Java源程序组成的集合C.使用import语句可以将指定包中的所有类引入到源程序中D.如果源程序中没有使用package语句,则该类就不会出现在任何包中。
答案:C下列关于继承的哪项叙述是正确的?A.在java中允许多重继承B.在java中一个类只能实现一个接口C.在java中一个类不能同时继承一个类和实现一个接口下面的语句的作用是:()。
Vector MyVector = new Vector(100,50);A.创建一个数组类对象MyVector,有100个元素的空间,每个元素的初值为50。
B.创建一个向量类对象MyVector,有100个元素的空间,每个元素的初值为50。
C.创建一个数组类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增。
D.创建一个向量类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增。
答案:Dmain方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的A.public static void main()B.public static void main(String args[] )C.public static int main(String [] arg )D.public void main(String arg[] )答案:B以下说法中错误的是:()A.Choice、Checkbox、CheckboxGroup、List这些组件可以接收用户在一个选择的集合中作出选择,但是不能输出信息B.一个Checkbox对象既可以作为一个复选按钮,也可作为一个单选按钮组中的一个按钮C.一个复选按钮实现的是“二选一”的结构,一个单选按钮组实现的是“多选一”的结构D.List对象可以实现“多选一”结构,也可以实现“多选多”结构,完全由创建List对象时的参数确定答案:A下列关于Java类的构造方法的说法中错误的是:()A.构造方法的名字必须与类的名字完全相同B.构造方法一般不能由程序员在程序中主动调用C.父类的构造方法能被子类继承D.构造方法必须用public访问控制符修饰答案:D在一个应用程序中有如下定义:int a[]={1,2,3,4,5,6,7,8,9,10};为了打印输出数组a的最后一个元素,下面正确的代码是( )。