Java数组练习题带答案_第1页
Java数组练习题带答案_第2页
Java数组练习题带答案_第3页
Java数组练习题带答案_第4页
Java数组练习题带答案_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、WOR格式专业资料整理填空题1) 数组的元素通过 一下标一 访问,数组 Array 的长度为 Array.length2) 数组复制时,=将一个数组的 引用传递给另一个数组。3) JVM将数组存储在栈(堆或栈)中。数组的二分查找法运用的前提条件是数组已4) 经廿序。5) Java中数组的下标的数据类型是整型 。6) 数组最小的下标是 0。arraycopy() 的最后一个参数指复制元素的个7) 明数。8) 向方法传递数组参数时,传递的是数组的引用 。9) 数组初始化包括数组的申明,创建和初始化。10 数组下标访问超出索引范围时抛) 出 数组越界异常11) 浮点型数组的默认值00。12) 数组创

2、建后其大小 不能 改变。二选择题1. 下面错误的初始化语句是 _ABD_A. charstr=hello;B.charstr100=hello;D.charstr=hello;C.charstr=h,e,T,T,o;2. 定义了一维int型数组a10后,下面错误的引用是 _B,A.a0=1;B.a10=2;C.a0=5*2;D.a1=a2*a0;3.下面的二维数组初始化语句中,正确的是A.floatb22=0.1,0.2,0.3,0.4;C.inta2=1,2,3,4;引用数组元素时,数组下标可以4. 是A.整型常量B.整型变量5. 定义了 int型二维数组a67A.24B.256.下列初始化

3、字符数组的语句中,正确的是B.inta=1,2,3,4;D.floata22=0;DC.整型表达式D.以上均可后,数组元素a34前的数组元素个数为C.18D.17BA.charstr5=hello;C.charstr5=hi;7. 数组在Java中储存在C 中A.栈B.队列8. 下面程序的运行结果是 main()inta=1,2,3,4,5,6;System.out.printf(%d,a11);B.charstr=h,e,T,T,o,0;D.charstr100=;C.堆D.链表A. 3B.4C.5D.69. 下面程序的运行结果是 _Cmain()intx=30;intnumbers=new

4、intx;x=60;D.a2D.直接跳过System.out.println(numbers .1 ength);A. 60B.20C.30D.5010. 下面程序的运行结果是BDF main()chars1=ABCDEF.toCharArray();inti=0;while(s1i+!=0)System.out.println(s1i+);A.ABCDEF B.BDFC.ABCDE11. 下面不是创建数组的正确语句 CA.floatf=new float66;C.floatf=new float6;12. 下面不是数组复制方法的是 (C)A.用循环语句逐个复制数组C. 用=进行复制13. 数

5、组a的第三个兀素表示为DA.a(3)B.a314. 当访问无效的数组下标时,会发生A. 中止程序B.抛出异常D.BCDEB. float f=new float6;D.float f=new float6;B. 用方法 arraycopyD.用clone方法C. a(2)BC. 系统崩溃15. 使用arraycopy()方法将数组 a复制到b正确的是AA.arraycopy(a,0,b,0,a.length)B.arraycopy(a,0,b,0,b.length)C.arraycopy(b,0,a,0,aength)D.arraycopy(a,1,b,1,aength)16. 关于数组默认值

6、,错误的是BA.char-u0000 B.Boolean-true C.float-0.0fD.int-0数组的元素17. 关于数组作为方法的参数时,向方法传递的是AA. 数组的引用 B. 数组的栈地址 C.数组自身D.18. 关于数组复制,下列说法错误的是ACA. =可以实现数组复制B. 运用循环语句进行数组复制必须两个数组长度相同C. arraycopy()方法没有给目标数组分配内存空间D. 数组复制是数组引用的传递19. 下列语句会造成数组newint10 越界是Di=0;i=10;i+)A.a0+=9;B.a9=10;C. a9D.for(intai+;20. 在JDK环境下编译JAV

7、A源程序使用的命令是(B)A.javaB.javacC.jvmD.tomcatD.21.main方法是main方法放入方法以下合法的是()A.publicstaticvoid main();B.publicstaticvoid main(Stringargs)C.publicstaticint main(Stringarg)D.publicvoid main(String执行完代码intx=newint25;后以下(A)说明正确的A.x24为0B.x24 未定义C.x25为0D.x0子类不能使用父类的构造方法程序执行的入口点。关于java Application23.关于数组排序方法,错误的是

8、C插入排序C.二分排序22.为空A.选择排序arg)排序B.D.用 arrays.sort(24.关于char类型的数组,说法正确的是A.其数组的默认值是AB.可以仅通过数组名来访问数组C.数组不能转换为字符串D.可以存储整型数值25. 对于数组a10,下列表示错误的是A.a0B.a(0)C.a9D.a126. 下列数组声明,下列表示错误的是A.intaB.intaC.intaD.int a三、是非题1()()下标用于指出数组中某个元素位置的数字 把数组中元素按某种顺序排列的过程叫做查 找。确定数组中是否含有某个关键字的过程叫做排 序。.一个数组可以存放许多不同类型的数值。(5. 数组的下标通

9、常是float型。()6. 数组的某个元素被传递给一个方法并被该方法修改,当被调用方法执行完毕时,这个元素中 含有修改过的数值。()7. 数组可以声明为任何数据类型。()8. 数组由具有一名字和相同类型的一组连续内存单元构成。()9. 在数组声明中可以用等号及一个逗号分隔的初始值表初始化数组元素,该数组大小只能由用户来决定。()10. 将一个数组传递给一个方法,必须加在数组名后加方括号。()11. Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。()12. 下面这条语句正确吗?()doublemyList;myList=1.9,2.9,3.5,4.6;表示数组 array

10、中元素的个数 ()14. 数组中有length()这个方法,如array.length()15. 下面这条语句正确吗?()intt32=1,2,3,4,5,6;16. 数组声明后其大小固定。()17. 设有整型数组的定义:intA.=newint8;,贝U a.length 的值为7。()18. 数组一旦创建,其大小不能再改变。()19. 用任何方式创建数组时,都必须指定数组的长度。()20. 声明数组时,要指定数组长度,以便为数组分配内存。()四、简答题1. 如何声明和创建一个一维数组?2. 如何访问数组的元素?3. 数组下标的类型是什么?最小的下标是什么? 一维数组a的第三个元素如何表示?

11、4. 数组越界访问会发生什么错误?怎样避免该错误?5. 给方法传递数组参数与传递基本数据类型变量的值有何不同?6. 复制数组有哪些方法?8.声明数组变量会为数组分配内存空间吗?为什么?五、程序题1. 有一个整数数组,其中存放着序列1, 3, 5, 7, 9, 11, 13, 15, 17, 19。请将该序列倒序存放并输出。1) publicclassTest2) publicstaticvoidmain(Stringargs)3) inta=1,3,5,7,9,11,13,15,17,19;4) intt;5) System.out.println(”数组的初始状态为:);6) for(int

12、i=0;iae ngth;i+)7) System.out.print(+ai);8) System.out.println();9)9) for(inti=0;ia.length/2;i+)10) t=ai;11) ai=aa.length-i-1;12) aa.length-i-1=t;13) 15)14) System.out.println(”数组逆序存放后的状态为:”);15) for(inti=0;ia.length;i+)16) System.out.print(+ai);17) 18) 2. 编写一个程序,提示用户输入学生数量 姓名和他们的成绩,并按照成绩的降序来打印学9)生的

13、姓名。1) publicclassexercise162) publicstaticvoidmain(Stringargs)3) StringnumberString=4) JOptionPane.showlnputDialog(Enterthenumberofstudents);5) intnumberOfStudents=lnteger.parselnt(numberString);6)6) Stringnames=newStringnumberOfStudents;7) doublescores=newdoublenumberOfStudents;10) for(inti=0;i=1;i

14、-)16) doublecurrentMax=scores0;17) intcurrentMaxIndex=0;19)18) for(intj=1;jv=i;j+)19) if(currentMax=O;i-)33) System.out.println(namesi+t+scoresi);34) 35) 36) 3.编写一个程序,使它能够读入10个整数,并且存储其中互不相同的数,最后将这10个数输出1)。importjavax.swing. JOptionPane;2)3)publicclassexercise54)privatestaticintj=0;5)6)publicstaticvo

15、idmain(Stringargs)7)intarraylnt=newint10;8)inti=0;9)10)do11)StringnumberString=JOptionPane12).showlnputDialog(Enteranumber:);13)14)intnumber=lnteger.parselnt(numberString);15)16)if(isNotHave(arraylnt,number)17)arrayInti=number;18)i+;19)j+;20)21)else22)23)do24)numberString=JOptionPane25).showlnputDia

16、log(This1numbersexit,enteraanothernumber:);26)number=Integer.parseInt(numberString);27)while(!isNotHave(arraylnt,number);28)29)arraylnti=number;30)i+;31)j+;32)33)while(iarraylnt.length);34)35)Stringoutput=;36)for(intk:arraylnt)37)output+=k+;38)39)40)JOptionPane.showMessageDialog(null,Theelementsofar

17、raylntisarraylnt41)+output,output5JOptionPaneNFORMATION_MESSAGE);42)43)44)publicstaticbooleanisNotHave(intarraylnt,intn)45)for(inti=0;ivj;i+)46)if(array In ti=n)47)returnfalse;48) 49) returntrue;50) 51) 4. 先对数组1 , 3, 9, 5, 6, 7, 1, 5, 4, 8进行排序,然后二分查找法找出数组中的元素8,标出其排序后其下标的位置。1) publicclassTest2) publi

18、cstaticvoidmain(Stringargs)3) intnumbers=1,3,9,5,6,7,1,5,4,8;4) java.util.Arrays.sort(numbers);5)5) System.out.println(”排序后的数组为:);6) for(inti=0;ilow)mid=(mid=(low+high)/2)?22)(mid+1):(low+high)/2);23)if(key=0);15)15) doubleaverage=(sum-scorescount)/(count-1);17)18) intnumOfAbove=0;19) intnumOfBelow=

19、0;20) for(inti=0;i=average)22) numOfAbove+;23) else24) numOfBelow+;25)25) System.out.println(Averageis+average);26) System.out.println(Numberofscoresaboveorequaltotheaverage27) +numOfAbove);28) System.out.println(Numberofscoresbelowtheaverage29) +numOfBelow);31)30) System.exit(0);31) 32) 6. 编写一个程序,生

20、成 0-9之间的100个随机整数并且显示每一个数的个数。1) publicclassexercise72)publicstaticvoidmain(Stringargs)3)intnumbers=newint100;4)intcounts=newint10;5)6)intk;7)for(inti=0;i100;i+)8)9)numbersi=(int)(Math.random()*10);10)countsnumbersi+;11)12)13)System.out.println(the100numbersis:);14)for(inti=1;i=numbers .l ength;i+)15)

21、16)if(i%10!=0)17)System.out.print(numbersi-1+);18)else19)System.out.println(numbersi-1);20)21)22)System.out.println(thecountsofeachnumberis:);23)for(inti=1;i=counts .l ength;i+)24)System.out.print(countsi-1+);25)26) numbers)7. 求平均值和方差。利用mean(int numbers) 求平均值,利用 deviation(int求标准差1)2)3)oimportjava.ut

22、il.Scanner;publicclassMeanDeviation4)5)6)7)8)9)10)11)12)13)14)15)16)Scannerin=newScanner(System.in);System.out.print( intn=in.nextlnt();输入数组的长度:);System.out.print( intarray=newintn; for(inti=0;iarra y.l ength;i+) arrayi=in.nextInt();输入数组元素:);System.out.print(Themeanis:+mean(array)+npublicstaticvoidmain(Stringargs)WOR格式17)18)+Thedeviationis:+deviation(array);19)20)publicstaticdoublemean(intnumbers)21)22)doublesum=0.0;23)for(inti=0;inumber

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论