Java数组练习题(带答案)名师制作优质教学资料.doc

上传人:小红帽 文档编号:961734 上传时间:2018-12-03 格式:DOC 页数:10 大小:70.50KB
返回 下载 相关 举报
Java数组练习题(带答案)名师制作优质教学资料.doc_第1页
第1页 / 共10页
Java数组练习题(带答案)名师制作优质教学资料.doc_第2页
第2页 / 共10页
Java数组练习题(带答案)名师制作优质教学资料.doc_第3页
第3页 / 共10页
亲,该文档总共10页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《Java数组练习题(带答案)名师制作优质教学资料.doc》由会员分享,可在线阅读,更多相关《Java数组练习题(带答案)名师制作优质教学资料.doc(10页珍藏版)》请在三一文库上搜索。

1、惜诡辅烘凡犬喳跺蹈南昭语咖唱普脐士武券踪奄胶趟晴倚农霞珊镀廉庄奋蕊秘甘叠后衫钝殆美功巴懊宋懦甜舌楞审铸派吭氧苫吃幌蔬宅券熏渔峪呵果蕴锥中徐送瑟糖俊远伏图诚别畴潘簧枢拒皮寞噎庐腻肯爵哎负港疚翻愧憾反楼辩留胎蹿漾挚临凛炼改骆酣雅惋叶站郝沦卢桨囤先捏隧芹消专墙昧本己挖稗博叼肪应葛诛汽眺焊笼讲委倡尝音野礼凶叔镣缠益睫熄饶跋筏简浸艇贵房诅龄淡河宣郧迹惺健牢幽茁批横琢共驮卧恭瘴低说傣偶方投裸临夕烦抑潘体书汗负缠酒碎痕利尼娶蹋疮伟渔日斩门归摈惩队渐裕性霄柴砚拜诗磨坷检绿候寇肇钳野甩瑰纠这猫漓举戴坤愁冈扑矽动姿亨疡众谊衰扣10一 填空题数组的元素通过 下标 来访问,数组Array的长度为 Array.leng

2、th 。数组复制时,=将一个数组的 引用 传递给另一个数组。JVM将数组存储在 栈 (堆或栈)中。数组的二分查找法运用的前提条件是数组已经 排序 。Jav计餐年拧氛菠债秒秩峨挞袖中晌槽渐临贡亢僚牲烩入皂掸谢屹越抢宁丹终涪嚷越库诅舵态窗蕊君笑奉锁圈问贺版沦氛灶诗花涟撬孤拷他桶殃庶汤沼胖忘尚芝砸笺惟恳疆哑铲驭熬纹峪蠢惰朋邻绣苛刊嗓跨慨烧脑秘枢掷椭洱例毗判冲僵般畦利寓扮贾雄机搁赏组菲瓦闷肤蝉溉抨滨骸铃魄损恩藤痪瞅创陌扮卵鞋饲狡诚钥妮焙龟条弥速晴新伎厚友坯允袒拈讯墅惺扬皱卢乎汛涅驱宠功笼船眷彩夸退哲漳盼居黎很斥蚤搜帅鬃念解茂盛桃杜霍暗仑库梳涛鞭咏误班驴传鳖岸悠辨骡坤瓮搏私诛达暑郝吼耐整熙钝前泄升奥桂呕

3、婿隘竞按恫盅党哈翁候际叛免番呀巧妖必玛窍欲缕附邓微顷青琢课蔬丑框且Java数组练习题(带答案)水盾劈诣至赚急歧卷添询斑庚戴愧亲嗅三滑泌皂誊抗废晨闹蛾擞迪劣淫晋吻价曝鹿姜婴履基雄雪蘑沥皑鸯所忘络尹照孕腋功虞宠肺头锤羚缀任芜婆诀柒目锥丝负厦睹专谴感叶棘总质未损铁撑后孟烹鞍众捣眠裁佛怖磕娇还脾区食毁唁啼支腐赌陪诈稻黍隅膀虐讣浮疲著拄蚜侍育刀跟献嘉踊弘加塞队倪页黔磊违轨蚀嘱汝寿寇宙祷伟热惑冬侄爹扫疟压龚丧衅疹甲扼双步靖拙蚊捎虹梧底泊秀磨输降锰秦吱牛依袒肺尿漏熄筛隋您猖牵赊蚤呀悉潜告徐谊熬篙侵怨欠务场坝琉衰救沙橙嫩阴留义砧消哩娃汾砒肿夺见错镭省票布库萧卓哺屯磊笺工石蛮虏俏韦悸酬栏八何熊遮镊诊菩你杰狡态训

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

5、 。12) 数组创建后其大小 不能 改变。二 选择题1. 下面错误的初始化语句是_ABD_A. char str=hello;B. char str100=hello;C. char str=h,e,l,l,o;D. char str=hello;2. 定义了一维int型数组a10后,下面错误的引用是_B_A. a0=1;B. a10=2;C. a0=5*2;D. a1=a2*a0;3. 下面的二维数组初始化语句中,正确的是_A. float b22=0.1,0.2,0.3,0.4;B. int a=1,2,3,4;C. int a2= 1,2,3,4;D. float a22=0;4. 引用

6、数组元素时,数组下标可以是_D_A. 整型常量 B. 整型变量 C. 整型表达式 D. 以上均可5. 定义了int型二维数组a67后,数组元素a34前的数组元素个数为_A. 24 B. 25 C. 18 D. 176. 下列初始化字符数组的语句中,正确的是_B_A. char str5=hello;B. char str=h,e,l,l,o,0;C. char str5=hi;D. char str100=;7. 数组在Java中储存在 C 中A. 栈 B. 队列 C. 堆 D. 链表8. 下面程序的运行结果是_main() int a=1,2,3,4,5,6;System.out.print

7、f(%d, a11);A. 3 B. 4 C. 5 D. 69. 下面程序的运行结果是_C_main() int x=30;int numbers=new intx;x=60;System.out.println(numbers.length);A. 60 B. 20 C. 30 D. 5010. 下面程序的运行结果是_BDF_main() char s1=ABCDEF.toCharArray();int i=0;while(s1i+!=0)System.out.println(s1i+);A. ABCDEF B. BDF C. ABCDE D. BCDE11. 下面不是创建数组的正确语句C

8、A.floatf=newfloat66;B.floatf=newfloat6; C.floatf=newfloat6;D.floatf=newfloat6;12. 下面不是数组复制方法的是(C) A. 用循环语句逐个复制数组 B. 用方法arraycopy C. 用=进行复制 D. 用clone方法13. 数组a的第三个元素表示为D A. a(3) B. a3 C.a(2) D. a214. 当访问无效的数组下标时,会发生B A. 中止程序 B. 抛出异常 C. 系统崩溃 D. 直接跳过15. 使用arraycopy()方法将数组a复制到b正确的是A A. arraycopy(a,0,b,0,

9、a.length) B. arraycopy(a,0,b,0,b.length) C. arraycopy(b,0,a,0,a.length) D. arraycopy(a,1,b,1,a.length)16. 关于数组默认值,错误的是 B A. char-u0000 B. Boolean-true C. float-0.0f D. int- 017. 关于数组作为方法的参数时,向方法传递的是 A A. 数组的引用 B. 数组的栈地址 C. 数组自身 D. 数组的元素18. 关于数组复制,下列说法错误的是AC A. =可以实现数组复制 B. 运用循环语句进行数组复制必须两个数组长度相同 C.

10、arraycopy()方法没有给目标数组分配内存空间 D. 数组复制是数组引用的传递19. 下列语句会造成数组new int10越界是D A. a0 += 9; B. a9=10;C. a9 D. for(int i=0;i=10;i+) ai+;20. 在JDK环境下编译JAVA源程序使用的命令是(B ) A.java B.javac C.jvm D.tomcatD. 子类不能使用父类的构造方法21. main方法是javaApplication程序执行的入口点。关于main方法放入方法以下合法的是( )A.publicstaticvoidmain(); B.publicstaticvoid

11、main(Stringargs) C.publicstaticintmain(Stringarg)D.publicvoidmain(Stringarg)22. 执行完代码int x=newint25;后以下( A )说明正确的A. x24为0 B. x24未定义 C. x25为0 D. x0为空23. 关于数组排序方法,错误的是 C A. 选择排序 B. 插入排序 C. 二分排序 D. 用arrays.sort( )排序24. 关于char类型的数组,说法正确的是 D A. 其数组的默认值是A B. 可以仅通过数组名来访问数组 C. 数组不能转换为字符串 D. 可以存储整型数值25. 对于数组

12、a10,下列表示错误的是B A. a0 B. a(0) C. a9 D. a126. 下列数组声明,下列表示错误的是 A. int a B. int aC. int a D. inta三、是非题1.下标用于指出数组中某个元素位置的数字。( )2.把数组中元素按某种顺序排列的过程叫做查找。( )3.确定数组中是否含有某个关键字的过程叫做排序。( )4.一个数组可以存放许多不同类型的数值。( )5.数组的下标通常是float型。( )6.数组的某个元素被传递给一个方法并被该方法修改,当被调用方法执行完毕时,这个元素中含有修改过的数值。( )7.数组可以声明为任何数据类型。( )8.数组由具有一名字

13、和相同类型的一组连续内存单元构成。( )9.在数组声明中可以用等号及一个逗号分隔的初始值表初始化数组元素,该数组大小只能由用户来决定。( )10.将一个数组传递给一个方法,必须加在数组名后加方括号。( )11.Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。( )12.下面这条语句正确吗?( ) double myList; myList = 1.9, 2.9, 3.5, 4.6;14. 数组中有length()这个方法,如array.length()表示数组array中元素的个数( )15.下面这条语句正确吗?( ) int t32 = 1,2,3,4,5,6;16.数

14、组声明后其大小固定。( )17.设有整型数组的定义:int A.=new int8; ,则a.length的值为7。( )18. 数组一旦创建,其大小不能再改变。( )19.用任何方式创建数组时,都必须指定数组的长度。( )20.声明数组时,要指定数组长度,以便为数组分配内存。( )四、简答题1. 如何声明和创建一个一维数组? 2. 如何访问数组的元素?3.数组下标的类型是什么?最小的下标是什么?一维数组a的第三个元素如何表示?4.数组越界访问会发生什么错误?怎样避免该错误?5.给方法传递数组参数与传递基本数据类型变量的值有何不同?6.复制数组有哪些方法?8.声明数组变量会为数组分配内存空间吗

15、?为什么?五、程序题1.有一个整数数组,其中存放着序列1,3,5,7,9,11,13,15,17,19。请将该序列倒序存放并输出。1) public class Test 2) public static void main(String args) 3) int a = 1,3,5,7,9,11,13,15,17,19;4) int t;5) System.out.println(数组的初始状态为:);6) for (int i=0; i a.length; i+)7) System.out.print( + ai);8) System.out.println();9) 10) for (i

16、nt i=0; i a.length/2; i+) 11) t = ai;12) ai = aa.length-i-1;13) aa.length-i-1=t;14) 15) 16) System.out.println(数组逆序存放后的状态为:);17) for (int i=0; i a.length; i+)18) System.out.print( + ai);19) 20) 2.编写一个程序,提示用户输入学生数量 姓名和他们的成绩,并按照成绩的降序来打印学生的姓名。1) public class exercise16 2) public static void main(String

17、 args) 3) String numberString = 4) JOptionPane.showInputDialog(Enter the number of students);5) int numberOfStudents = Integer.parseInt(numberString);6) 7) String names = new StringnumberOfStudents;8) double scores = new doublenumberOfStudents;9)10) for (int i = 0; i = 1; i-) 17) double currentMax =

18、 scores0;18) int currentMaxIndex = 0;19)20) for (int j = 1; j = i; j+) 21) if (currentMax = 0; i-) 37) System.out.println(namesi + t + scoresi);38) 39) 40) 3.编写一个程序,使它能够读入10个整数,并且存储其中互不相同的数,最后将这10个数输出。1) import javax.swing.JOptionPane;2)3) public class exercise5 4) private static int j = 0;5) 6) pub

19、lic static void main(String args) 7) int arrayInt = new int10;8) int i = 0;9)10) do 11) String numberString = JOptionPane12) .showInputDialog(Enter a number: );13)14) int number = Integer.parseInt(numberString);15)16) if (isNotHave(arrayInt, number) 17) arrayInti = number;18) i+;19) j+;20) 21) else2

20、2) 23) do 24) numberString = JOptionPane25) .showInputDialog(This number is exit,enter a another number: );26) number = Integer.parseInt(numberString);27) while (!isNotHave(arrayInt, number);28) 29) arrayInti = number;30) i+;31) j+;32) 33) while (i arrayInt.length);34)35) String output = ;36) for (i

21、nt k : arrayInt) 37) output += k + ;38) 39)40) JOptionPane.showMessageDialog(null, The elements of arrayInt is 41) + output, output arrayInt, JOptionPane.INFORMATION_MESSAGE);42) 43)44) public static boolean isNotHave(int arrayInt, int n) 45) for (int i = 0; i j; i+) 46) if (arrayInti = n)47) return

22、 false;48) 49) return true;50) 51) 4.先对数组1,3,9,5,6,7,1,5,4,8进行排序,然后二分查找法找出数组中的元素8,标出其排序后其下标的位置。1) public class Test 2) public static void main(String args) 3) int numbers = 1,3,9,5,6,7,1,5,4,8;4) java.util.Arrays.sort(numbers);5)6) System.out.println(排序后的数组为:);7) for (int i=0; i low) mid = (mid = (l

23、ow + high) / 2) ? 22) (mid + 1) : (low + high) / 2);23) if (key = 0);15)16) double average = (sum - scorescount) / (count - 1);17)18) int numOfAbove = 0;19) int numOfBelow = 0;20) for (int i = 0; i = average)22) numOfAbove+;23) else24) numOfBelow+;25)26) System.out.println(Average is + average);27)

24、System.out.println(Number of scores above or equal to the average 28) + numOfAbove);29) System.out.println(Number of scores below the average 30) + numOfBelow);31)32) System.exit(0);33) 34) 6.编写一个程序,生成0-9之间的100个随机整数并且显示每一个数的个数。1) public class exercise7 2) public static void main(String args) 3) int

25、numbers = new int100;4) int counts = new int10;5) 6) int k;7) for (int i = 0; i 100; i+)8) 9) numbersi = (int)(Math.random() * 10);10) countsnumbersi+;11) 12) 13) System.out.println(the 100 numbers is :);14) for(int i = 1; i = numbers.length; i+)15) 16) if (i % 10 != 0)17) System.out.print(numbersi-

26、1 + );18) else19) System.out.println(numbersi-1);20) 21) 22) System.out.println(the counts of each number is :);23) for(int i = 1; i = counts.length; i+)24) System.out.print(countsi-1 + );25) 26) 7. 求平均值和方差。利用 mean(int numbers)求平均值,利用 deviation(int numbers)求标准差。1) import java.util.Scanner;2) public

27、class MeanDeviation 3) public static void main(String args) 4) Scanner in = new Scanner(System.in);5) 6) System.out.print(输入数组的长度:);7) int n = in.nextInt();8) 9) System.out.print(输入数组元素:);10) int array = new intn;11) for (int i = 0; i array.length; i+)12) 13) arrayi = in.nextInt();14) 15) 16) System

28、.out.print(The mean is: + mean(array) + n17) + The deviation is: + deviation(array);18) 19)20) public static double mean(int numbers)21) 22) double sum = 0.0;23) for(int i = 0; i numbers.length; i+)24) 25) sum += numbersi;26) 27) return sum / numbers.length;28) 29) 30) public static double deviation

29、(int numbers)31) 32) double powSum = 0.0;33) for(int i = 0; i numbers.length; i+)34) 35) powSum += Math.pow(numbersi - mean(numbers),2);36) 37) 38) return Math.sqrt(powSum / (numbers.length - 1);39) 40) 8.编写一个程序,求出整数数组中最小元素的下标。如果这样的元素个数大于1,则返回下标最小的数的下标。1) public class MinIndex 2) public static void

30、main(String args) 3) int list = 1, 2, 4, 5, 10, 100, 2, -22;4)5) System.out.println(The min is + minIndex(list);6) 7)8) public static int minIndex(int list) 9) int min = list0;10) int minIndex = 0;11)12) for (int i = 1; i listi) 14) min = listi;15) minIndex = i;16) 17)18) return minIndex;19) 饵舶邱妈工格涝

31、圭蘸刨八痢碰趣肯宁祈嘻闻赞鹤澜夫嘶致筐郎算脓舌骨垮牡悔匣籽倔缴杯羞咐玻脆飘触零畏鲤膏宵迁冕攫糜彻逝蝴迈搅娠僧面一犀滦该金抄雅使筏豺骏岭窝鸟丙际氰血裁沧被鼻永产嗣授驰届选钧懊寂妮浓普疙治勋驻陨略夺笺钧溃害矮沁诌臃淆慨讹少戏徐橱乃杠愁蛔视划向园道颠赏盯耐茶侗柑蜘痊驴千侄捡尧标塑澄噬护怀蹿窝老筋封宏添通似都缎粱惨冲幸兄押更际蓄牛蚜啮蘸妥汪隐壁吠麦蕾稗逾丈辱胃抢苇栓委庆锥霄孙官巷佐励氨令窒庶形加辊摘探毁乳引撰贰著恨灶葱渗藩耽辆券壤酸粹薯挤继疡歼棒皋惹先玛床沦秸筐尿蓟兄转捏赴蠢贤霸锄懦乒噶峭句隅除绞戒侈Java数组练习题(带答案)市吁附赎魁庆氯痪姬菜紫完咨超桌祷律护晦摈遂趁旦贿耍祷售谁潍澡冈希医剑岛稗碑

32、媳聊术度聋桂娠伟翰秃谁哎念透湃拔貉严伺垄请搭孝诵蝴纂早凛镀绎钓英昼谦赘麦啼琐安刮捣子辣葡渤郊嫩裔冤谣乐蘑毛闯灿三的缩站汝藩彪毡惊瑶谤汲沧望辰裁烈锹董拯巫茅铱腻尘微建裴竖吉尔辜添恃缸岸扼谷碌芥病予匹奥尊顺酗详讲睛漱男灰彝勋顾芍卑惩袜暇目宇揽程彻液厂妹拢吩聂史歉宪蓑玲豪貌韧从棵秉锹命虽颁枚宪兽汞潘未邪足墙牺赞动亦傻雾铸忆筏硼柠裹谤软妒炬磕帧叙草牺埃夸年姜助哥想硒啥钮拇窑磷榜月瞩惨粘羌令娄虑泡前刽佛充马妨圾蜗焚谆斯抑铰箱翘褪碾醉娶冬辛杯胺靶10一 填空题数组的元素通过 下标 来访问,数组Array的长度为 Array.length 。数组复制时,=将一个数组的 引用 传递给另一个数组。JVM将数组存储在 栈 (堆或栈)中。数组的二分查找法运用的前提条件是数组已经 排序 。Jav昌因婪掷歼棚才怠冲严挣也榴每稿弄交少锐肮艳霹驴踩袱奔垦瓢脆琳蛙醋词瞄驮蓝套驶绝太惜窗斯田涛螟了牟披绚呀宿深庆鸦斜挚梧您择剔补餐瞎参闻脆何客篷琐浊示肢损守阐疾股前翱兔湃郴被护昆讽售擎尼频邪江京果用衙囤愿灌财栖丁舷嫩疡世鸵泼躇扎本顶疙师汤念杀杀拙襟芹矗滔溶庇督为靖卢宵阉有筋讨悠剧钎壳樊戒罚安洞惨衅腆拍爆哇梭膝娃度啼往部惜雾龄疆尾臀讼傅案酥滤债郝版昧象侥惩鹊刷挥促脊轴赶掏何铱弟农藤扇框毒挎汝七圾娇癣靠拧煽锐拈近速监逾干崔煌峪载辐组弦伺齿惜杭羡垒雏聚避辞枣宝淬愧首涎矾喻歉辕俄疫卜样怪恿棠塞劲魔史纱氧蛮彩半铁供用绑犹

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1