JAVA基础练习程序 数组冒泡排序

JAVA基础练习程序 数组冒泡排序
JAVA基础练习程序 数组冒泡排序

/*

数组排序

*/

public class BubbleSort {

public static void main(String[] args){

int[] arr = {1,25,36,21,24,12,39,87};

System.out.println("排序前:");

String str = array2string(arr);

System.out.println(str);

bubblesort(arr);

System.out.println("排序后:");

String str2 = array2string(arr);

System.out.println(str2);

}

/*冒泡排序*/

public static void bubblesort(int[] arr){

for(int x=0;x

for(int y=0;y

if(arr[y] > arr[y+1]){

swap(arr,y,y+1);

}

}

}

}

//定义数组元素之间位置交换

public static void swap(int[] arr,int index1,int index2){ //定义临时变量

int temp = arr[index1];

arr[index1] = arr[index2];

arr[index2] = temp;

}

//定义字符串打印

public static String array2string(int[] arr){

String str = "";

for(int x=0;x

if(x != arr.length-1){

str = str + arr[x] + ",";

1

} else {

str = str + arr[x];

}

}

return str;

}

}

2

《JAVA程序设计》试卷含答案

《JAVA 程序设计》试卷 《JAVA 程序设计》试卷 第1页,共6页 第2页,共6页 Java 程序设计 一、 填空题(要求将答案写在空白处,共11道小题,每空1分,共20分) 1、Java 的三大体系分别是______、______、______。 2、Java 程序的运行环境简称之为______。 3、Java 中的程序代码都必须在一个类中定义,类使用______关键字来定义。 4、布尔常量即布尔类型的两个值,分别是______和______。 5、在Java 中,byte 类型数据占______个字节,short 类型数据占______个字节,int 类型数据占______个字节,long 类型数据占______个字节。 6、若x = 2,则表达式 ( x + + )/3 的值是______。 7、若int a =2; a+=3;执行后,变量a 的值为______。 8、若int []a={12,45,34,46,23}; ,则a[2]= ______。 9、若int a[3][2]={{1,1},{2,2},{3,3}},则a[2][1]= ______。 10、 面向对象的三大特征是______、______和______。 11、 定义在类中的变量被称为______,定义在方法中的变量被称为______ 二、 选择题(将正确答案写在括号内,注意没有在题目中特别说明的均为单选题, 共10题,每题2分,共20分) 1、以下选项中,哪个用来编译源程序 A 、Javadoc B 、Java 运行工具 C 、Java 编译器 D 、Java 打包工具 2、Java 属于以下哪种语言? A 、机器语言 B 、 汇编语言 C 、高级语言 D 、以上都不对 3、下面哪种类型的文件可以在Java 虚拟机中运行? A 、.java B 、.jre C 、class D 、.exe 4、以下选项中,switch 语句判断条件可以接收的数据类型有哪些? (多选) A 、int B 、byte C 、char D 、short 5、假设int x = 2,三元表达式 x>0?x+1:5 的运行结果是以下哪一个? A 、0 B 、2 C 、3 D 、5 6、下面的运算符中,用于执行除法运算是哪个? A 、% B 、\ C 、/ D 、* 7、下列语句哪些属于循环语句?(多选) A 、for 语句 B 、if 语句 C 、while 语句 D 、switch 语句 8、下面哪种写法可以实现访问数组arr 的第1个元素? A 、arr[0] B 、arr(0) C 、arr[1] D 、arr(1) 9、以下哪个选项可以正确创建一个长度为3的一维数组? A 、 new int [2]; B 、 new int[3][]; C 、 new int[3]; D 、 以上答案皆不对 10、请先阅读下面的代码。 int x = 1; int y = 2; if (x % 2 == 0) { y++; } else { y--; } System.out.println("y=" + y); 上面一段程序运行结束时,变量y 的值为下列哪一项? A 、3 B 、2 C 、1 D 、switch 语句 三、程序阅读题(要求将分析结果写在答题纸上,共4道小题,每题5分,共20分) 阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果。否则请说明编译失败的原因。 代码一: public class Test01 {

java程序设计基础(含参考答案)

“Java程序设计基础”课程习题 一、填空 1.Java程序分两类___Applet___和application,Java Application 类型的程序,程序从 ___main方法___开始执行。 2.定义一个Java类时,通过关键字__extends____指明该类的父类。一个类可以有___1___ 个父类。 3.用public修饰的类称为_公有类或公用类__。用public修饰的类成员称为公有成员。被 说明为public的内容可以被__所有其他类___ 使用。如果public类文件与使用它的类文件不在同一目录中,需要通过__import____语句引入。 4.用___private___ 修饰的类成员称为私有成员。私有成员只能在__本类__ 中使用。 5.如果子类定义的成员变量与父类的成员变量同名,称为___方法覆盖___ ,要表明使用 子类的成员变量,可以在成员变量前加上关键字__super___ 。 6.____Object__ 类是Java类库中所有类的父类。 7.Java字符使用__16位的字符集,该字符集成为__Unicode____ 。 8.当子类中定义的方法与父类方法同名时,称子类方法___覆盖___ 父类方法,子类默认 使用自己的方法。使用父类的同名方法,必须用关键字__super__ 说明。 9.Java源程序文件名的后缀是___.java___,Java字节码文件名的后缀是_.class_____。 10.Java类名的第一个字母通常要求___大写___。 11.Java程序由____类__组成,每个程序有一个主类,Java程序文件名应与____主__类的 名称相同。 12.Java__Application_类型的程序需要main()方法,程序从__main____开始执行。 13.布尔型数据类型的关键字是_boolean__ ,占用位数是___1位___ ,有__true__ 和_false_ 两种值。整型数可以采用_十_ 、__八_ 和__十六_三种进制表示。 14.八进制整数以数字__0_开头。十六进制整数以_0x或0X_ 开头。 15.int整型数占用__32位内存。long整型数占用__64 位内存。 16.127L表示__长整型____ 常量。 17.根据占用内存长度将浮点常量分为_double_____ 和__float____ 两种。 18.单精度浮点常量占用__32_ 位内存,双精度浮点常量占用__64 位内存。 19.在Java语言中,字符串“ABC\tD\b\n”中包括__7个字符。 20.数学关系44&&x<9____ 。数学关系x>3且x<=10对应 的Java表达式是_x>3&&x<=10。数学关系x>3或x<-10对应的Java表达式是_x>3||x<-10_。 21.逻辑表达式true&&false&&true的结果是_false_ 。 22.__new__ 运算符的作用是根据对象的类型分配内存空间。当对象拥有内存空间时,会 自动调用类中的构造方法为对象_初始化_。 23.省略访问修饰符的类只能被同_一包_中的类使用,称之具有包访问特性。 24.用public修饰的类称为_公共类_。用public修饰的类成员称为公共成员。被说明为public 的内容可以被_所有类_ 使用。如果public类文件与使用它的类文件不在同一目录中,需要通过_import_语句引入。 25.用_private_ 修饰的类成员称为私有成员。私有成员只能在_本类使用。 26.在类中可以定义多个具有相同名称、但参数不同的方法,这种做法称为__方法重载_ 。 27.如果子类定义的成员变量与父类的成员变量同名,要表明使用子类的成员变量,可以在 成员变量前加上关键字__this__。

Java程序设计期末考试试题

Java程序设计期末考试试题、试卷、习题A卷 一、选择题。本题共20小题,每题2分,满分40 分。 1、在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行……… () A)init() B)start() C)destroy() D)stop() 2、有以下方法的定义,请选择该方法的返回类型() ReturnType method(byte x, double y) { return (short)x/y*2; } A)byte B)short C)int D)double 3、以下哪项可能包含菜单条()。 A)Panel B)Frame C)Applet D)Dialog 4、Java application中的主类需包含main方法,main方法的返回类型是什么?()A)int B)float C)double D)void 5、Java application中的主类需包含main方法,以下哪项是main方法的正确形参?( ) A)String args B)String ar[] C)Char arg D)StringBuffer args[] 6、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。 A). java B) .class C) . html D) .exe 7、设int型变量x = 1 , y = 2 , z = 3,则表达式y+=z--/x++ 的值是( )。 A)3 B)3. 5 C)4 D)5 8、不允许作为类及类成员的访问控制符的是( )。 A)public B)private C)static D)protected 9、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。 A)static void method( ) B)public void method( ) C)final void method( ) D)abstract void method( ) 10、以下哪一个不是JAVA的标准数据流( )。 A)标准输出数据流B)标准输入数据流C)标准错误数据流D)标准运算数据流 11.设有下面两个赋值语句:( ) a = Integer.parseInt(“123”); b = Integer.valueOf(“123”).intValue(); 下述说法正确的是()。 A)、a是整数类型变量,b是整数类对象。B)、a是整数类对象,b是整数类型变量。C)、a和b都是整数类对象并且值相等。D)、a和b都是整数类型变量并且值相等。 12、下列代表十六进制整数的是( ) A)0123 B)1900 C)fa00 D)0xa2

JAVA程序设计试卷一

浙江工商大学2006/2007学年第一学期考试试卷课程名称:Java程序设计考试方式:闭卷完成时限:120分钟班级名称:学号:姓名:题号一二三四五六七八九十总分分值 得分 阅卷人 一、选择题(每题2分,共30分) 1、Java程序的执行过程中用到一套JDK工具,其中java.exe是指B。 A.Java文档生成器 B.Java解释器 C.Java编译器 D.Java类分解器 2、Java语言中,下列标识符错误的是D。 A.—sys1 B.&—m C.I D.40name 3、下列语句执行后,变量a、c的值分别是B。 int x=182; int a,c; c=x/100; a=x%10; A)1,2B)2,1C) 1.82,2D)100,82 4、应用程序的main方法中有以下语句,则输出的结果是A。 String s1="0.5",s2="12"; double x=Double.parseDouble(s1); int y=Integer.parseInt(s2); System.out.println(x+y); A)12.5B)120.5C)12D)“12.5” 5、下列程序段执行后的结果是A。 String s=new String("abcdefg");

for(int i=0;i

基础排序总结(冒泡排序、选择排序)

1、冒泡排序 1.1、简介与原理 冒泡排序算法运行起来非常慢,但在概念上它是排序算法中最简单的,因此冒泡排序算法在刚开始研究排序技术时是一个非常好的算法。 冒泡排序原理即:从数组下标为0的位置开始,比较下标位置为0和1的数据,如果0号位置的大,则交换位置,如果1号位置大,则什么也不做,然后右移一个位置,比较1号和2号的数据,和刚才的一样,如果1号的大,则交换位置,以此类推直至最后一个位置结束,到此数组中最大的元素就被排到了最后,之后再根据之前的步骤开始排前面的数据,直至全部数据都排序完成。 1.2、代码实现 public class ArraySort { public static void main(String[] args) { int[] array = {1, 7, 3, 9, 8, 5, 4, 6}; array = sort(array); for (int i = 0; i < array.length; i++) { System.out.println(array[i]); } } public static int[] sort(int[] array) { for (int i = 1; i < array.length; i++) { for (int j = 0; j < array.length-i; j++) { if (array[j] > array[j+1]) { int temp = array[j]; array[j] = array[j+1]; array[j+1] = temp; } } } return array; } } 1.3、效率

Java程序设计基础习题答案

Java程序设计基础课后习题参考答案 第2章 1、关于Java Application得入口方法main()得检验: main()方法得参数名就是否可以改变? main()方法得参数个数就是否可以改变? 该方法名就是否可以改变? 参考答案:(1)main()方法得参数名可以改变.(2)main()方法得参数个数不可以改变。(3)该方法名不可以改变。 2、当一个程序没有main()方法时,能编译吗?如果能编译,能运行吗? 参考答案:当一个程序没有main()方法就是,就是可以编译通过得,但就是不能给运行,因为找不到一个主函数入口。 3、下列语句能否编译通过? bytei =127; bytej = 128; longl1 = 999999; long l2= 9999999999; 参考答案:byte i 与long l1可以编译通过。而byte j 与longl2 超出自身数据类型范围,所以编译失败。 4、下列语句能否编译通过? float f1 =3、5; float f2 = 3.5f; 参考答案:java中浮点型得数据在不声明得情况下都就是double型得,如果要表示一个数据就是float型得,必须在数据后面加上“F”或“f”;因此,floatf1 无法编译通过。 5、验证int 与char,int与double等类型就是否可以相互转换。 参考答案:(1)char类型可以转换为int 类型得,但就是int类型无法转换为char类型得;(2)int 可以转换为double类型得,但就是double类型无法转换为int 类型得。 6、计算下列表达式,注意观察运算符优先级规则。若有表达式就是非法表达式,则指出不合法之处且进行解释。 (1)4+5 == 6*2 ?(2) (4=5)/6?? (3)9%2*7/3>17(4)(4+5)<=6/3 ? (5) 4+5%3!=7-2????(6)4+5/6〉=10%2 参考答案:表达式(2)为不合法表达式,只能将值赋值给一个变量,因此其中(4=5)将5赋值给4就是不合法得. 7、下列()就是合法得Java标识符。 (1)Counter1 ??(2)$index, (3) name-7 ??(4)_byte

C语言冒泡排序及流程图(思路解析)

1、功能:冒泡排序 输入:数组名称(也就是数组首地址)、数组中元素个数 ================================================ */ /* ==================================================== 算法思想简单描述: 在要排序的一组数中,对当前还未排好序的范围内的全部数,自上 而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较 小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要 求相反时,就将它们互换。 下面是一种改进的冒泡算法,它记录了每一遍扫描后最后下沉数的 位置k,这样可以减少外层循环扫描的次数。 冒泡排序是稳定的。算法时间复杂度O(n2)--[n的平方] ===================================================== */ void bubble_sort(int *x, int n) { int j, k, h, t; for (h=n-1; h>0; h=k) /*循环到没有比较范围*/ { for (j=0, k=0; j *(x+j+1)) /*大的放在后面,小的放到前面*/ { t = *(x+j); *(x+j) = *(x+j+1); *(x+j+1) = t; /*完成交换*/ k = j; /*保存最后下沉的位置。这样k后面的都是排序排好了的。*/ } } } } 2 在要排序的一组数中,对当前还未排好序的范围内的全部数,自上 而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较

Java程序设计(1)试卷(A)

学院 数计 卷教师 叶锋 系主任签名 制卷份数 专业 电信、通信、光电 班级编号 B07073011、07073021、07073031 江汉大学2009——2010学年第 1学期 考 试 试 卷 课程编号: 课程名称: JAVA 程序设计(1) 试卷类型: 卷 考试时间:120 分钟 一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题2分,共30分) 1、 一个Java 程序运行从上到下的环境次序是( C )。 A. 操作系统、Java 程序、JRE/JVM 、硬件 B. JRE/JVM 、Java 程序、硬件、操作系统 C. Java 程序、JRE/JVM 、操作系统、硬件 D. Java 程序、操作系统、JRE/JVM 、硬件 2、下面哪些是合法的标识符。(A ) A. persons B. 12345 C. *point D. this 3、以下说法正确的是( B )。 A.一个可直接运行的Java 源文件中可以有多个public 类,其中必须有一个和文件同名 B.一个可直接运行的Java 源文件中可以没有public 类 C.一个可直接运行的Java 源文件中只能有一个且和文件同名的public 类。 D. 一个可直接运行的Java 源文件中可以有多个public 类,且可以没有和文件同名的类。 4、在java 中定义常量的正确语法为( C )。 A . int value=20; B. const int V ALUE=20; C. final int V ALUE=20; D. int V ALUE=20; 5、下面代码的运行输出结果是( A )。 public class example { public static void main(String args[]) { int x=0; if (x>0) x=1; switch (x)

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 str[100]="hello"; C. char str[]={'h','e','l','l','o'}; D. char str[]={'hello'}; 2.定义了一维int型数组a[10]后,下面错误的引用是_B__ A. a[0]=1; B. a[10]=2; C. a[0]=5*2; D. a[1]=a[2]*a[0]; 3.下面的二维数组初始化语句中,正确的是____ A. float b[2][2]={0.1,0.2,0.3,0.4}; B. int a[][]={{1,2},{3,4}}; C. int a[2][]= {{1,2},{3,4}}; D. float a[2][2]={0}; 4.引用数组元素时,数组下标可以是_D___ A. 整型常量 B. 整型变量 C. 整型表达式 D. 以上均可 5.定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为____ A. 24 B. 25 C. 18 D. 17 6.下列初始化字符数组的语句中,正确的是__B__ A. char str[5]="hello"; B. char str[]={'h','e','l','l','o','\0'}; C. char str[5]={"hi"}; D. char str[100]=""; 7.数组在Java中储存在 C 中 A. 栈 B. 队列 C. 堆 D. 链表 8.下面程序的运行结果是____ main() { int a[][]={{1,2,3},{4,5,6}}; System.out.printf("%d", a[1][1]); } A. 3 B. 4 C. 5 D. 6 9.下面程序的运行结果是_C___ main() {

(程序设计基础JAVA)期末考试试卷

……………… …………………………密 ……………………封… …………………线………………………………………级号名班学姓《程序设计基础(java)》试题B 卷试卷说明:闭卷考试,时间120分钟。一、填空(本题共15空,每空2分,共30分)1.如果一个java 源程序文件中定义有4个类,使用sun 公司的JDK 编译器javac 编译该源程序文件将产生________个文件名与类名相同扩展名为_______的字节码文件。2.Java 中所有类都是类__Object__的子类。3.请填出在java .lang 包中与下列基本数据类型相对应的封装类:float :java .lang .Float ,char :_______,boolean :________。4.被关键字_________修饰的方法是不能被当前类的子类重新定义的方法5.线程的四种状态是_______、__、_、____。6.java 语言中_____是所有类的根。7.Swing 的事件处理机制包括___、事件和事件处理者。8.URL__________是的缩写。9.java 有两类应用程序java Application 和__________。10.转义字符以_____开头。二、选择(本题共20小题,每题2分,共40分)1.欲构造ArrayList 类的一个实例,此类继承了List 接口,下列哪个方法是正确的?()A 、ArrayList myList=new Object ();B 、List myList=new ArrayList ();C 、ArrayList myList=new List ();D 、List myList=new List ();2.paint()方法使用哪种类型的参数?()A 、Graphics B 、Graphics2D C 、String D 、Color 3.指出正确的表达式()A 、byte=128;B 、Boolean=null;C 、long l=0xfffL;D 、double=0.9239d;4.指出下列程序运行的结果()public class Example{String str=new String("good");char[]ch={'a','b','c'};public static void main(String args[]){Example ex=new Example();ex .change(ex .str,ex .ch);System .out .print(ex .str+"and ");Sytem .out .print(ex .ch);}public void change(String str,char ch[]){ch[0]='g';}}B 、good and abc B 、good and gbc C 、test ok and abc D 、test ok and gbc 5.运行下列程序,会产生什么结果()public class X extends Thread implements Runable{public void run(){System .out .println("this is run()");}public static void main(String args[]){Thread t=new Thread(new X());t .start();}}A 、第一行会产生编译错误B 、第六行会产生编译错误C 、第六行会产生运行错误D 、程序会运行和启动6.要从文件"file .dat"文件中读出第10个字节到变量C 中,下列哪个方法适合?()A 、FileInputStream in=new FileInputStream("file .dat");in .skip(9);int c=in .read();B 、FileInputStream in=new FileInputStream("file .dat");in .skip(10);int c=in .read();C 、FileInputStream in=new FileInputStream("file .dat");int c=in .read();D 、RandomAccessFile in=new RandomAccessFile("file .dat");in .skip(9);int c=in .readByte();7.容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变?()A 、CardLayout B 、FlowLayout C 、BorderLayout D 、GridLayout 8.给出下面代码:public class Person{static int arr[]=new int[10];public static void main(String a[]){System .out .println(arr[1]);}}那个语句是正确的?()A 、编译时将产生错误;B 、编译时正确,运行时将产生错误;C 、输出零;D 、输出空。9.下列那个是反斜杠的正确表示?()A 、\\B 、*\\C 、\’D 、\’\’10.下列哪些语句关于内存回收的说明是正确的?()A 、程序员必须创建一个线程来释放内存;题号一二三四五六七八九总分得分得分得分

Java程序设计基础习题(1-3章)

Java程序设计基础 一、选择题 1、下列标识符不合法的是() A) $variable B) _variable C) variable5 D) break 2、下列哪一个不属于Java的基本数据类型() A) int B) String C) double D) boolean 3、下列答案正确的是() A) int n = 7; int b = 2 * n++; 结果: b = 15, n = 8 B) int n = 7; int b = 2 * n++; 结果: b = 16, n = 8 C) int n = 7; int b = 2 * n++; 结果: b = 14, n = 8 D) int n = 7; int b = 2 * n++; 结果: b = 14, n = 7 4、Java中,下列答案正确的是() A) int n = 7; int b = 2; n/b=3.5; B) int n = 7; int b = 2; n/b=3.5L C) int n = 7; int b = 2; n/b=3.5D D) int n = 7; int b = 2; n/b=3; 6、表示范围大的数据类型要转换成范围小的数据类型,需要用到()类型 转换 A) 隐式B) 强制

7、System.out.print(“1”+2)打印到屏幕的结果是() A) 3 B) 12 C) 1+2 D) 4 8、下面哪个是不合法的变量名称?() A) while-ture B) True C) name D) T1 9、下列变量定义正确的是:() A) boolean status=1; B) float d = 45.6; C) char ch=”a”; D) int k = 1+’1’; 10、某个main()方法中有以下的声明: final int MIN=0; final int MAX=10; int num=5; 下列哪个语句可以用, 来表示”num的值大于等于MIN并且小于等于MAX” ( ) A) !(numMAX) B) num>=MIN && num<=MAX C) num>MIN || num<=MAX D) num>MIN || num

Java程序设计实验题目

1.Java程序设计基础 实训项目一:Java开发环境安装与使用(2学时) 实训内容: (1)下载并安装JDK; (2)安装Java集成开发环境JCreator; (3)第1个java程序“Hello World”程序的编辑、编译与运行。 实训要求: 掌握Java开发环境的安装与配置,了解JCreator中ConfigureàoptionsàJDK Profiles的设置;掌握Java应用程序的编写、编译、运行过程。 实训项目二:Java基础应用(2学时) 实训内容: 编写简单的Java程序,将多种类型变量通过各种运算符组成不同的表达式,并将运算结果赋值给同类型的变量,使用print方法输出各变量的值。 实训要求: 掌握Java语言的各种数据类型;熟悉运算符和表达式的用法;学会编写完成一定目标的简单程序。 实训项目三:Java流程控制(2学时) 实训内容: (1)使用分支语句编写简单的Java程序,完成对某个实际问题的判断处理。 (2)使用循环语句编写简单的Java程序,解决需要重复处理的实际问题。 实训要求: 掌握条件语句的使用;掌握循环语句的使用;锻炼运用所学的知识解决实际问题的能力;了解常用的累加和、数学函数图形打印等基本问题的解决方法。 实训项目四:数组(2学时) 实训内容: (1)编写简单的Java程序,验证数组的声明、创建和使用。 (2)编写简单的Java程序,使用数组解决排序、查找等问题。 实训要求: 掌握一维数组、多维数组声明、创建和使用;掌握利用一维数组解决实际问题的方法;了解多维数组的应用。 2.类和对象、包、接口 实训项目五:类与对象的基本操作(2学时) 实训内容: 按照面向对象编程思想编写简单的类,对客观事物进行描述,类的定义包含成员变量声明及成员方法声明与实现,并创建对象进行类的测试。 实训要求: 掌握面向对象编程的思想;掌握类的定义、变量声明、方法声明及实现;掌握对象的创建。实训项目六:构造方法与方法重载(2学时) 实训内容: 编写含有构造方法与成员方法类,实现构造方法与成员方法的重载,编写该类的测试类。实训要求: 掌握构造方法的定义;理解构造方法的原理;掌握方法重载的实现;理解静态多态的概念。实训项目七:类的继承与多态(2学时) 实训内容:

Java数组测习题(带答案)

精心整理一填空题 1)数组的元素通过下标来访问,数组Array的长度为Array.length。 2)数组复制时,"="将一个数组的引用传递给另一个数组。 3)JVM将数组存储在栈(堆或栈)中。 4)数组的二分查找法运用的前提条件是数组已经排序。 5)Java中数组的下标的数据类型是整型。 6)数组最小的下标是0。 7) 8) 9) 10) 11) 12) 1. 2. 3. 4. 5. 6. 7. 8.A. 9. 10. 11.A 12.C.charstr[5]={"hi"}; D.charstr[100]=""; 13.数组在Java中储存在C中 14.A.栈 B.队列 C.堆 D.链表 15.下面程序的运行结果是____ main(){ inta[][]={{1,2,3},{4,5,6}}; }

A.3 B.4 C.5 D.6 16.下面程序的运行结果是_C___ 17.m ain(){ intx=30; int[]numbers=newint[x]; x=60; (numbers.length); } A.60 B.20 C.30 D.50 18. 19.m 20.c 21.i 22.w 23. 24.A 25.C 26. A. C.用 27. 28. A. 29. 30. A.char--'"u0000' B.Boolean--true C.float--0.0f D.int--0 31.关于数组作为方法的参数时,向方法传递的是A A.数组的引用 B.数组的栈地址 C.数组自身 D.数组的元素 32.关于数组复制,下列说法错误的是AC A."="可以实现数组复制 B.运用循环语句进行数组复制必须两个数组长度相同 C.arraycopy()方法没有给目标数组分配内存空间 D.数组复制是数组引用的传递

2014秋季Java程序设计期末考试试卷(A卷)

华南农业大学期末考试试卷(A 卷) 2014-2015学年第 1 学期 考试科目: Java 程序设计 考试类型:(闭卷) 考试 考试时间: 120 分钟 学号 姓名 年级专业 第一大题选择题和第二大题判断题的答案必须填涂在机读卡上,第三、四大题答案写在答题卷上。考试结束时机读卡、答题卷和试卷都要上交。 一、单项选择题(本大题共 17 小题,每小题 2 分,共 34 分) 1. 下列关于Java 程序的说法错误的是________。 A.一个类被编译成一个.class 字节码文件 B. Java 程序是解释执行的,所以程序运行速度快,而且无需编译 C. Java 程序可以实现跨平台 D.有且仅有一个包含main 方法的主类,否则不能运行 2. 下列________是用于一般开发的Java 开发工具标准版本。 A. Java EE B. Java ME C. Java SE D. JDK 3. 下列符合Java 程序类名命名习惯的是________。 A. _iBoy B. Data C. 4k@sina D. studentGrade 4. 下列数据定义错误的是________。 A. float f = 5; B. int d = (int)4.3; C. byte c = -1186; D. final double PI = 3.14; 5. 下列程序片段运行的结果是________。 int a = 36; int b = (a++)%5; System.out.println("a="+a+",b="+b); A. a=36,b=0 B.a=37,b=2 C.a=36,b=1 D.a=37,b=1 6. 下列程序片段运行的结果是________ int score = 93; char level = 'A'; switch(score/10){ case 10 :

JAVA数组的排序方法实例

冒泡排序法 1.public class SortArray_01 { 2. public static void main(String args[]) { 3. int[] array = { 14, 5, 86, 4, 12, 3, 21, 13, 11, 2, 55 }; // 创建一个初始化的一维数组array 4. System.out.println("未排序的数组:"); 5. for (int i = 0; i < array.length; i++) { // 遍历array数组中的元素 6. System.out.print(" " + array[i]); // 输出数组元素 7. if ((i + 1) % 5 == 0) // 每5个元素一行 8. System.out.println(); 9. } 10. int mid; // 定义一个中间变量, 起到临时存储数据的作用 11. for (int i = 0; i < array.length; i++) { // 执行冒 泡排序法 12. for (int j = i; j < array.length; j++) { 13. if (array[j] < array[i]) { 14. mid = array[i]; 15. array[i] = array[j]; 16. array[j] = mid; 17. } 18. } 19. } 20. System.out.println("\n使用冒泡法排序后的数组:"); 21. for (int i = 0; i < array.length; i++) { // 遍历排好序的array数组中的元素 22. System.out.print(" " + array[i]); // 输出数组元素 23. if ((i + 1) % 5 == 0) 24. System.out.println(); // 每5 个元素一行 25. } 26. } 27.} 数组递增排序

冒泡排序专题

一、例题回顾 例1、某书店在5所学校流动售书量(单位:本)分别是82、113、46、69、35。 例2、有一组原始数据:23、25、18、63、84、77、65、9、33、17。利用冒泡排序算法进行从小到大排序,最多需要进行()次加工,()次比较,才可以完成整个数据的排序。 有一组数据,采用冒泡排序第一遍排序以后数据为 4,10,5,32,6,7,9,17, 24 那么该数组原来顺序不可能的是() A.10,5,32,6,7,9,17,24,4 B.10,5,32,6,7,9,17,24,4 C.10,5,32,4,6,7,9,17,24 D. 4,10,5,32,9,17,24,6,7 3、在某年市机器人投篮比赛中,共有5支队伍参加,各队的最终成绩如下:82、7 4、66、9 5、70(单位:个/分钟),现用冒泡排序算法来实现这些数据的排序操 A.1次 B.2次 C.3次 D.4次 4、某书店在5所学校流动售书量(单位:本)分别是82、113、46、69、35。采用冒泡排序对其进行排序,若完成第一遍时的结果是3 5、82、113、4 6、69,则完成第二遍时的结果是() A. 35、82、113、46、69 B. 35、46、82、69、113 C. 35、46、82、113、69 D. 35、46、69、82、113 5、实现某排序算法的部分VB程序如下: For i = 1 To 4 For j = n To i + 1 step -1 If a(j) < a(j-1) Then t = a(j):a(j) = a(j-1):a(j-1) = t Next j Next i 在经过某一遍排序“加工”后,数组元素a(1)到a(5)的数据依次为“25、77、 51、59、32”。则下一遍排序“加工”后数组元素a(1)到a(5)的数据应该是 () A. 25、32、77、51、59 B. 25、32、51、59、77 C. 25、32、59、51、77 D.25、32、51、77、59

Java程序设计基础习题答案

Java程序设计基础课后习题参考答案 第2章 1、关于Java Application 的入口方法main()的检验: main()方法的参数名就是否可以改变? main()方法的参数个数就是否可以改变? 该方法名就是否可以改变? 参考答案:(1)main()方法的参数名可以改变。(2)main()方法的参数个数不可以改变。(3)该方法名不可以改变。 2、当一个程序没有main()方法时,能编译不?如果能编译,能运行不? 参考答案:当一个程序没有main()方法就是,就是可以编译通过的,但就是不能给运行,因为找不到一个主函数入口。 3、下列语句能否编译通过? byte i = 127; byte j = 128; long l1 = 999999; long l2 = 9999999999; 参考答案:byte i 与long l1可以编译通过。而byte j 与long l2 超出自身数据类型范围,所以编译失败。 4、下列语句能否编译通过? float f1 = 3、5; float f2 = 3、5f; 参考答案:java中浮点型的数据在不声明的情况下都就是double型的,如果要表示一个数据就是float型的,必须在数据后面加上“F”或“f”;因此,float f1 无法编译通过。 5、验证int 与char,int与double等类型就是否可以相互转换。 参考答案:(1)char类型可以转换为int 类型的,但就是int类型无法转换为char类型的;(2)int 可以转换为double类型的,但就是double类型无法转换为int 类型的。 6、计算下列表达式,注意观察运算符优先级规则。若有表达式就是非法表达式,则指出不合法之处且进行解释。 (1) 4+5 == 6*2 (2) (4=5)/6 (3) 9%2*7/3>17 (4) (4+5)<=6/3 (5) 4+5%3!=7-2 (6) 4+5/6>=10%2 参考答案:表达式(2)为不合法表达式,只能将值赋值给一个变量,因此其中(4=5)将5赋值给4就是不合法的。 7、下列()就是合法的Java标识符。 (1) Counter1 (2) $index, (3) name-7 (4) _byte (5) larray (6) 2i

相关文档
最新文档