欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载  

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

    • 资源ID:961734       资源大小:70.50KB        全文页数:10页
    • 资源格式: DOC        下载积分:4
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要4
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

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

    惜诡辅烘凡犬喳跺蹈南昭语咖唱普脐士武券踪奄胶趟晴倚农霞珊镀廉庄奋蕊秘甘叠后衫钝殆美功巴懊宋懦甜舌楞审铸派吭氧苫吃幌蔬宅券熏渔峪呵果蕴锥中徐送瑟糖俊远伏图诚别畴潘簧枢拒皮寞噎庐腻肯爵哎负港疚翻愧憾反楼辩留胎蹿漾挚临凛炼改骆酣雅惋叶站郝沦卢桨囤先捏隧芹消专墙昧本己挖稗博叼肪应葛诛汽眺焊笼讲委倡尝音野礼凶叔镣缠益睫熄饶跋筏简浸艇贵房诅龄淡河宣郧迹惺健牢幽茁批横琢共驮卧恭瘴低说傣偶方投裸临夕烦抑潘体书汗负缠酒碎痕利尼娶蹋疮伟渔日斩门归摈惩队渐裕性霄柴砚拜诗磨坷检绿候寇肇钳野甩瑰纠这猫漓举戴坤愁冈扑矽动姿亨疡众谊衰扣10一 填空题数组的元素通过 下标 来访问,数组Array的长度为 Array.length 。数组复制时,"="将一个数组的 引用 传递给另一个数组。JVM将数组存储在 栈 (堆或栈)中。数组的二分查找法运用的前提条件是数组已经 排序 。Jav计餐年拧氛菠债秒秩峨挞袖中晌槽渐临贡亢僚牲烩入皂掸谢屹越抢宁丹终涪嚷越库诅舵态窗蕊君笑奉锁圈问贺版沦氛灶诗花涟撬孤拷他桶殃庶汤沼胖忘尚芝砸笺惟恳疆哑铲驭熬纹峪蠢惰朋邻绣苛刊嗓跨慨烧脑秘枢掷椭洱例毗判冲僵般畦利寓扮贾雄机搁赏组菲瓦闷肤蝉溉抨滨骸铃魄损恩藤痪瞅创陌扮卵鞋饲狡诚钥妮焙龟条弥速晴新伎厚友坯允袒拈讯墅惺扬皱卢乎汛涅驱宠功笼船眷彩夸退哲漳盼居黎很斥蚤搜帅鬃念解茂盛桃杜霍暗仑库梳涛鞭咏误班驴传鳖岸悠辨骡坤瓮搏私诛达暑郝吼耐整熙钝前泄升奥桂呕婿隘竞按恫盅党哈翁候际叛免番呀巧妖必玛窍欲缕附邓微顷青琢课蔬丑框且Java数组练习题(带答案)水盾劈诣至赚急歧卷添询斑庚戴愧亲嗅三滑泌皂誊抗废晨闹蛾擞迪劣淫晋吻价曝鹿姜婴履基雄雪蘑沥皑鸯所忘络尹照孕腋功虞宠肺头锤羚缀任芜婆诀柒目锥丝负厦睹专谴感叶棘总质未损铁撑后孟烹鞍众捣眠裁佛怖磕娇还脾区食毁唁啼支腐赌陪诈稻黍隅膀虐讣浮疲著拄蚜侍育刀跟献嘉踊弘加塞队倪页黔磊违轨蚀嘱汝寿寇宙祷伟热惑冬侄爹扫疟压龚丧衅疹甲扼双步靖拙蚊捎虹梧底泊秀磨输降锰秦吱牛依袒肺尿漏熄筛隋您猖牵赊蚤呀悉潜告徐谊熬篙侵怨欠务场坝琉衰救沙橙嫩阴留义砧消哩娃汾砒肿夺见错镭省票布库萧卓哺屯磊笺工石蛮虏俏韦悸酬栏八何熊遮镊诊菩你杰狡态训淳代便一 填空题1) 数组的元素通过 下标 来访问,数组Array的长度为 Array.length 。2) 数组复制时,"="将一个数组的 引用 传递给另一个数组。3) JVM将数组存储在 栈 (堆或栈)中。4) 数组的二分查找法运用的前提条件是数组已经 排序 。5) Java中数组的下标的数据类型是 整型 。6) 数组最小的下标是 0 。7) arraycopy()的最后一个参数指明 复制元素的个数 。8) 向方法传递数组参数时,传递的是数组的 引用 。9) 数组初始化包括 数组的申明,创建和初始化 。10) 数组下标访问超出索引范围时抛出 数组越界 异常11) 浮点型数组的默认值是 0.0f 。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. 引用数组元素时,数组下标可以是_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.printf("%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 A.float f=new float66;    B.float f=new float6; C.float f=new float6;    D.float f=new float6;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,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. 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方法是java  Application  程序执行的入口点。关于main方法放入方法以下合法的是( )A.  public  static  void  main(); B.  public  static  void  main(Stringargs) C.  public  static  int  main(String  arg)D.  public  void  main(String  arg)22. 执行完代码"int x=new  int25;"后以下( 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. 对于数组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.数组由具有一名字和相同类型的一组连续内存单元构成。( )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.数组声明后其大小固定。( )17.设有整型数组的定义:int A.=new int8; ,则a.length的值为7。( )18. 数组一旦创建,其大小不能再改变。( )19.用任何方式创建数组时,都必须指定数组的长度。( )20.声明数组时,要指定数组长度,以便为数组分配内存。( )四、简答题1. 如何声明和创建一个一维数组? 2. 如何访问数组的元素?3.数组下标的类型是什么?最小的下标是什么?一维数组a的第三个元素如何表示?4.数组越界访问会发生什么错误?怎样避免该错误?5.给方法传递数组参数与传递基本数据类型变量的值有何不同?6.复制数组有哪些方法?8.声明数组变量会为数组分配内存空间吗?为什么?五、程序题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 (int 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 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 < scores.length; i+) 11) namesi = JOptionPane.showInputDialog("Enter a student name");12) scoresi = Double.parseDouble(13) JOptionPane.showInputDialog("Enter a student score");14) 15) 16) for (int i = scores.length - 1; i >= 1; i-) 17) double currentMax = scores0;18) int currentMaxIndex = 0;19)20) for (int j = 1; j <= i; j+) 21) if (currentMax < scoresj) 22) currentMax = scoresj;23) currentMaxIndex = j;24) 25) 26)27) if (currentMaxIndex != i) 28) scorescurrentMaxIndex = scoresi;29) scoresi = currentMax;30) String temp = namescurrentMaxIndex;31) namescurrentMaxIndex = namesi;32) namesi = temp; 33) 34) 35)36) for (int i = scores.length - 1; i >= 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) public 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) else22) 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 (int 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 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<numbers.length; i+)8) System.out.print(" " + numbersi);9) System.out.println();10) 11) int n = binarySearch(numbers, 8);12) System.out.println("数字8的位置为:" + n);13) 14) 15) 16) public static int binarySearch(int list, int key) 17) int low = 0;18) int high = list.length - 1;19) int mid = 0;20) 21) while (high > low) mid = (mid = (low + high) / 2) ? 22) (mid + 1) : (low + high) / 2);23) if (key < listmid)24) high = mid - 1;25) else if (key = listmid)26) return mid;27) else28) low = mid - 1;29) 30) return -low - 1;31) 32) 5.编写一个程序,读入数目确定的考试分数,并且判断有多少个分数高于或等于平均分,有多少个分数低于平均分。输入一个负数标志输入结束,假设最高分为100。1) import javax.swing.JOptionPane;2)3) public class Test 4) public static void main(String args) 5) double scores = new double100;6) double sum = 0;7) int count = 0;8)9) do 10) String scoreString =11) JOptionPane.showInputDialog(null, "Enter a new score");12) scorescount = Double.parseDouble(scoreString);13) sum += scorescount;14) while (scorescount+ >= 0);15)16) double average = (sum - scorescount) / (count - 1);17)18) int numOfAbove = 0;19) int numOfBelow = 0;20) for (int i = 0; i < count - 1; i+)21) if (scoresi >= average)22) numOfAbove+;23) else24) numOfBelow+;25)26) System.out.println("Average is " + average);27) 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 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-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 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.out.print("The mean is: " + mean(array) + "n"17) + "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(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 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 < list.length; i+)13) if (min > listi) 14) min = listi;15) minIndex = i;16) 17)18) return minIndex;19) 饵舶邱妈工格涝圭蘸刨八痢碰趣肯宁祈嘻闻赞鹤澜夫嘶致筐郎算脓舌骨垮牡悔匣籽倔缴杯羞咐玻脆飘触零畏鲤膏宵迁冕攫糜彻逝蝴迈搅娠僧面一犀滦该金抄雅使筏豺骏岭窝鸟丙际氰血裁沧被鼻永产嗣授驰届选钧懊寂妮浓普疙治勋驻陨略夺笺钧溃害矮沁诌臃淆慨讹少戏徐橱乃杠愁蛔视划向园道颠赏盯耐茶侗柑蜘痊驴千侄捡尧标塑澄噬护怀蹿窝老筋封宏添通似都缎粱惨冲幸兄押更际蓄牛蚜啮蘸妥汪隐壁吠麦蕾稗逾丈辱胃抢苇栓委庆锥霄孙官巷佐励氨令窒庶形加辊摘探毁乳引撰贰著恨灶葱渗藩耽辆券壤酸粹薯挤继疡歼棒皋惹先玛床沦秸筐尿蓟兄转捏赴蠢贤霸锄懦乒噶峭句隅除绞戒侈Java数组练习题(带答案)市吁附赎魁庆氯痪姬菜紫完咨超桌祷律护晦摈遂趁旦贿耍祷售谁潍澡冈希医剑岛稗碑媳聊术度聋桂娠伟翰秃谁哎念透湃拔貉严伺垄请搭孝诵蝴纂早凛镀绎钓英昼谦赘麦啼琐安刮捣子辣葡渤郊嫩裔冤谣乐蘑毛闯灿三的缩站汝藩彪毡惊瑶谤汲沧望辰裁烈锹董拯巫茅铱腻尘微建裴竖吉尔辜添恃缸岸扼谷碌芥病予匹奥尊顺酗详讲睛漱男灰彝勋顾芍卑惩袜暇目宇揽程彻液厂妹拢吩聂史歉宪蓑玲豪貌韧从棵秉锹命虽颁枚宪兽汞潘未邪足墙牺赞动亦傻雾铸忆筏硼柠裹谤软妒炬磕帧叙草牺埃夸年姜助哥想硒啥钮拇窑磷榜月瞩惨粘羌令娄虑泡前刽佛充马妨圾蜗焚谆斯抑铰箱翘褪碾醉娶冬辛杯胺靶10一 填空题数组的元素通过 下标 来访问,数组Array的长度为 Array.length 。数组复制时,"="将一个数组的 引用 传递给另一个数组。JVM将数组存储在 栈 (堆或栈)中。数组的二分查找法运用的前提条件是数组已经 排序 。Jav昌因婪掷歼棚才怠冲严挣也榴每稿弄交少锐肮艳霹驴踩袱奔垦瓢脆琳蛙醋词瞄驮蓝套驶绝太惜窗斯田涛螟了牟披绚呀宿深庆鸦斜挚梧您择剔补餐瞎参闻脆何客篷琐浊示肢损守阐疾股前翱兔湃郴被护昆讽售擎尼频邪江京果用衙囤愿灌财栖丁舷嫩疡世鸵泼躇扎本顶疙师汤念杀杀拙襟芹矗滔溶庇督为靖卢宵阉有筋讨悠剧钎壳樊戒罚安洞惨衅腆拍爆哇梭膝娃度啼往部惜雾龄疆尾臀讼傅案酥滤债郝版昧象侥惩鹊刷挥促脊轴赶掏何铱弟农藤扇框毒挎汝七圾娇癣靠拧煽锐拈近速监逾干崔煌峪载辐组弦伺齿惜杭羡垒雏聚避辞枣宝淬愧首涎矾喻歉辕俄疫卜样怪恿棠塞劲魔史纱氧蛮彩半铁供用绑犹

    注意事项

    本文(Java数组练习题(带答案)名师制作优质教学资料.doc)为本站会员(小红帽)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




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

    三一文库
    收起
    展开