“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.数学关系4
的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__。
28.在java.1ang包中提供了两个字符串类,分别是_String和_StringBuffer_ 。字符串类
提供的求字符串长度的方法是_length() 。
29.数学类Math属于_https://www.wendangku.net/doc/2417756470.html,ng_ 包。数学类提供的常量和函数都是_static_ 类型,无需建
立数学类对象,可以直接通过类名引用数学类的常量和函数。例如,引用圆周率π的方法是Math.PI_ 。
二、判断
1.++i执行后,i值不变,表达式的值也不变。(X)
2.浮点型数据的默认类型为float类型。(X)-----------double
3.设计一般类和主类时,可以有多个一般类,但只能有一个主类。(√)
4.类必须通过创建对象来引用。(√)
5.private声明的变量,不能被其它类引用。(√)
6.StringBuffer类和String类没有区别。(X)
7.println ( )和print()没有区别。( X )
8.JavaApplication和JavaApplet没有区别。( X )
9.Java程序由类组成。( √)
10.Java程序由函数组成。( X)
11.字符$不能作Java标识符的第一个字符。( X ) ---------首位不能是数字
12.一个数组中能够存储不同类型的数据。( X )
13.二维数组需要用两个下标才能确定数组元素。( √)
14.在Java语言中,定义数组后就可以使用。( X)
15.Java提供了许多系统定义类,用户可以直接使用。( X )
16.final类可以有子类。( X )
17.没有分配内存空间的对象不能使用。( √)
18.final类型的变量是符号常量,其值不能改变。( √ )
19.不可以为类定义多个构造方法。( X )
20.一个类不能既是子类又是父类。( X )
21.子类可以继承父类的所有成员。( X)
22.子类只能继承父类成员,不能修改父类成员。( X )
23.Java语言只支持类的单继承,不支持类的多继承。( √ )
24.在类中定义同名方法时,可以依靠返回值区别同名方法。( √)
25.Boolean和boolean没有区别。(X)
三、选择题
1.为AB类的一个无形式参数、无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A)。
A)static void method() B)public void method()
C)final void method() D)abstract void method()
3.不能用new运算符创建对象的类是( B )。
A.静态类B.抽象类 c.最终类D.公有类
答:A:一般和其他关键字一起用,不能单独使用;
B:抽象类不能实例化,只能由子类实现
C,D:可以进行实例化
4.在子类中重新编写父类方法的做法称为(B )。
A.方法重载B.方法覆盖C.方法继承D.方法重用
5.对于构造方法,下列叙述正确的是( C )。
A.构造方法是类的一种特殊方法,它的方法名可以任意取
B.构造方法的返回类型只能是void型
C.如果类中定义了构造方法,系统就不再提供默认构造方法
D.类中必须定义构造方法
答:A:方法名只能和当前的类名相同
B:没有void关键字,可以使用不带返回值的return关键字
C:类中如果自定义了构造方法,系统就不再提供默认构造方法
D:类中可以不要构造函数,由系统提供默认的不带任何形参的构造函数
6.为类定义多个名称相同,但参数不同的方法的做法称为(A)。
A.方法重载B.方法覆盖C.方法继承D.方法重用
7.对于构造方法,下列叙述正确的是( B )。
A)构造函数不允许重载
B)用户不能直接调用构造方法,只能由new运算符调用它
C)父类对象不可以用子类构造方法实例化
D)构造方法是实现对象初始化的唯一方法
答:A项:构造函数可以重载
B项:不能直接调用,只能在创建实例化时候会自动加载
C项:子类可以继承父类的非似有属性值,方法,包含构造方法
D项:构造还有静态语法块
8.类的两种基本成分是( A )和成员方法。
A)成员变量B)包C)对象D)接口
9.定义接口的关键字是( C )。
A.extends B.class C.interface D.Public
答:A是继承关键字B为类的关键字
C是定义接口的关键字D是公共修饰符
10.“/*thelastone*/”是下列( D )语句。
A)表达式语句B)条件语句C)循环语句D)注释语句
答:是注释语句
// 单行注释
/*tyhrt*/单行变量常量注释
/**
*多行文本注释
*/
11.当用户退出浏览器时,Applet程序调用的方法是(A)。
A.stop() B.init() C.start() D.destroy()
12.paint()方法有一个固定的参数,该参数的类型是(D)。
A.applet B.Applet C.graphics D.Graphics
13.在编写Java Application程序时,若需要使用到标准输入输出语句,必须在程序的开头写上( C )语句。
A. import java.awt.* ;
B. import java.applet.Applet ;
C. import java.io.* ;
D. import java.awt.Graphics ;
14.对象之间的交互是通过传递( D )来实现的。
A)对象B)方法C)类D)消息
15. Java Applet中,用来向Applet窗口输出字符或图形的常用方法为( A )。
A)paint B)init C)draw D)play
16.推出Java语言的公司是( D )。
A.IBM B.Applet C.Microsoft D.Sun
17.与Java语言相近的语言是( B )。
A.BASIC B.C++ C.FORTRAN D.PASCAL
18.System.out.print(12+3)的输出结果是( A ) 。
A.15 B.123 C.“123”D.“15”
19.System.out.print(“12”+3)的输出结果是(B ) 。
A.15 B.123 C.“123”D.“15”
20.在Java语言中,字节数据类型的关键字和默认值是( A ) 。
A.byte和0 B.byte和1 C.boolean和true D.boolean和false
21.一个字符类型数据占用的二进制位数是( B ) 。
A.8 B.16 C.32 D.64
一个字符是双字节的,2*8=16
22.表示单精度和双精度浮点常量的字母分别是( B ) 。.
A.C和D B.F和D C.B和D D.L和D
23.指出下面哪些是合法的标识符( B ) 。
A.3persons
B.TwoUsers
C.*point
D.this
24.指出下面哪些是将一个十六进制值赋值给一个1ong型变量( D ) 。
A.1ong number=3451。
B.1ong number=0345
C.1ong number=0345L
D.1ong number=0x345L
25.下面的哪些声明是合法的( D ) 。
A.1ong 1=4990.5D;
B.int i=4L;
C.float f=1.1;
D.double d=34.4;
26.1.23E2表示的数据是( C ) 。
A 1.23×2 B.1.23×10-2
C.1.23×102D.0.123×102
27.在Java语言中,只有整型数据才能进行的运算是( C ) 。
A.* B./C.%D.+
28.执行下面语句后,a,b和c的值分别是( C ) 。
int a=2;
int b=(a++)*3;
int c=(++a)*3;
A. 2 6 6 B.4 9 9
C. 4 6 12 D. 3 9 9
29.根据下面的代码:
if(x>0){System.out.println(“第一”);}
else if(x>-3){System.out.println(“第二”);}
else{System.out.println(“第三”);}
判断x的取值在什么范围内时将打印字符串“第二”( D ) ?
A.x>0
B.x>-3
C.x<= 一3
D.x<=0&x>一3
30.用于修饰类的访问修饰符是( A ) 。
A.public B.private C。protected D.statk
31.用abstract修饰的类称为( B ) 。
A,静态类B.抽象类C.最终类D.公有类
32.用final修饰的类称为( C ) 。
A.静态类B.抽象类 c.最终类D.公有类
33.不能用new运算符创建对象的类是( B ) 。
A.静态类B.抽象类 c.最终类D.公有类
34.如果希望方法不能在子类中更改,定义方法时要使用的修饰符是( B ) 。
A.static B.final C.abstract D.native
35.如果希望直接通过类名访问方法,在定义方法时要使用的修饰符是( A ) 。
A.static B.final C.abstract D.native
36.为类定义多个名称相同,但参数不同的方法的做法称为( A )。
A.方法重载B.方法覆盖C.方法继承D.方法重用
37.在子类中重新编写父类方法的做法称为( B )。
A.方法重载B.方法覆盖C.方法继承D.方法重用
38.定义接口的关键字是( C )。
A.extends B.class C.interface D.public
39.要引入applet包中的所有类,应使用的语句是(D)。
A.import java.applet.Applet B.import java.applet.Applet;
C.import java.applet.* D.import java.applet.*;
40.当启动Applet程序时,首先调用的方法是( B )。
A.stop() B.init() C.start() D.destroy()
41.当用户退出浏览器时,Applet程序调用的方法是( A )。
A.stop() B.init() C.start() D.destroy()
42.在Applet程序占用的屏幕上显示文字、图形等信息,应使用的方法是( A )。
A.paint() B.init() C.start() D.destroy()
43.paint()方法有一个固定的参数,该参数的类型是( D )。
A.applet B.Applet C.graphics D.Graphics
44.执行下面的程序段后,向量v的序列是( C )。
V ector v=new Vector(10);
v.addElement(”C++”);
v.addElement (”Java”);
V.addElement(”Basic”);
V.SetElementAt(“SQL—SeVer”,2);
v.removeElementAt(0);
A.”C++””Java””SQL-Sever”B.”C+十””Java””Basic”
C.”Java”“SQL-Sever”D.”Java””Basic””SQL-Sever”
其中addElement()方法:将指定的组件添加到此向量的末尾,将其大小增加1。如果向量的大小比容量大,则增大其容量。 SetElementAt()方法:将此向量指定index 处的组件设置为指定的对象。丢弃该位置以前的组件。索引必须为一个大于等于0 且小于向量当前大小的值。 删除指定索引处的组件。此向量中的每个索引大于等于指定index 的组件都将下移,使其索引值removeElementAt()方法:变成比以前小1 的值。此向量的大小将减1。索引必须为一个大于等于0 且小于向量当前大小的值。
45.提供println()方法和print()方法的类是( B )。
A.PrintStream B.System
C.InputStream D.DataOutputStream
四、简答题
1.写出java异常处理的格式,并简要说明。
答:try{ 你要抓的有可能发生异常的代码 }catch(你要抓的异常代码会出现的类型在这加个变量名代表这种类型){ 一旦异常出现,这代码块里面的代码会被执行 }finally{ 这里的代码是即使出现异常或者没有出现异常,这段代码都会被执行 }
2.比较两个字符串的方法有哪些?每个方法的返回值各是什么数据
类型?
答:①比较两个字符串的字符
equals(Object);
equalsIgnoreCase(String anotherString);
这两个方法用来比较两个字符串中对应的每个字符是否相同。前一个方法认为大小写字符是有区别的,后一个方法则忽略大小写,比如,认为A和a是一样的。如果比较结果相同,则返回值为true,反之,则为false
②比较两个字符串大小
compareTo(String str);
这个方法可以将当前字符串和另一个给定字符串比较,判断哪个更长。如当前字符串较短,则返回值为-1;如两个字符串长度相等,则返回值为0;如当前字符串较长,刚返回值为1。
③比较两个子字符串的字符
regionMatches(boolean ignoreCase,int toffset,String other,int ooffset,int len);
regionMatches(int toffset,String other,int ooffset,int len);
上述两个方法用来比较两个字符串中指定区域的子串。入口参数中,用toffset和ooff -
set分别指出当前字符串中的子串起始位置和要与之比较的字符串中的子串起始地址;len 指出比较长度。前一种方法可区分大写字母和小写字母,如果在boolean ignoreCase处写true,表示将不区分大小写,写false则表示将区分大小写。而后一个方法认为大小写字母有区别。由此可见,实际上前一个方法隐含了后一个方法的功能。
④比较两个字符串的前几个字符或者最后几个字符
startsWith(String Prefix);
startsWith(String prefix,int toffset);
endsWith(String suffix);
第1个方法用来比较给定字符串和当前字符串最初几个字符是否相同;第2个方法将
当前字符串的一个子串和给定字符串比较看是否相同;而第3个方法比较两个字符串最后几个字符是否相同。
3.在HTML文件中如何向嵌入的Applet程序传递参数,Applet程序
又如何获得这些参数?
答:由HTML文件嵌入的Applet程序传递参数使用参数param。Applet 小应用程序的实现主要依靠java.applet包中的Applet类。与一般的应用程序不同,Applet应用程序必须嵌入在HTML页面中,才能得到解释执行;同时Applet可以从Web页面中获得参数,并和Web 页面进行交互。
4.Java对标识符有什么规定?下列标识符中哪些是Java合法的标识
符?
答:在Java语言中,标识符可以含任意多个字母、数字、下划线或美元符号,但第一个字符必须为字母、下划线或美元符号,Java关键字不能当作Java标识符。(name、_name、myphone)
2Myclass new name %xy3 —name _name
myphone $s~avy
5.Java字符采用的国际标准编码是什么?有何特点?
答:采用国际化的Unicode字符集。在这种字符集中,每个字符用二个字节即16位表示。这样,整个字符集中共包含65535个字符。其中,前面256个表示ASCII码,使其对ASCII 码具有兼容性;后面21000个字符用来表示汉字、日文片假名、平假名和朝鲜文等。但是Uni -code只用在Java平台内部,当涉及打印、屏幕显示、键盘输入等外部操作时,仍由具体计算机的操作系统决定表示方法。比如,用英文操作系统时,则采用8位二进制表示的ASCII 码。
6.类与对象的关系是什么?如何创建和使用对象?
答:将具有相同属性及相同行为的一组对象称为类。对象是类的具体实例化。
对象的声明:
类名对象名=new 类名();
对象的调用:
访问属性:对象名.属性名;
访问方法:对象名.方法名();
7.static方法如何调用?非static方法如何调用?
答:static 方法:静态方法可以直接通过类名调用,任何的实例也都可以调用,因此静态方法中不能用this 和super 关键字,不能直接访问所属类的实例变量和实例方法(就是不带static 的成员变量和成员成员方法),只能访问所属类的静态成员变量和成员方法。因为static 方法独立于任何实例,因此static 方法必须被实现,而不能是抽象的abstract。(在main方法中可以直接调用)而非static方法要在main方法中新建一个(other1 Ot=new other1),然后再用Ot.show()来调用非static方法要显示的内容。
8.在已有类的基础上派生新类有什么好处?
答:新类可以从一个或多个已有类中继承成员函数或数据成员,而且新类还可以重新定义或加进新的数据和函数。
9.什么是类成员方法的重载?重载的作用是什么?
答:方法重载:是指存在于同一类中的方法指的是多个方法拥有同一个名字,每个方法都有一套唯一的不同于其他同名方法的参数列表。即方法名相同,参数列表不同。
作用:只写一个方法,根据所传参数不同去调用相对的功能。
10.什么是成员方法的覆盖?覆盖的作用是什么?
答:若子类中的方法与父类中的某一方法具有相同的方法名、返回类型和参数表,则新方法将覆盖原有的方法。方法重写又称方法覆盖。
作用:子类可继承父类中的方法,而不需要重新编写相同的方法。但有时子类并不想原封不动地继承父类的方法,而是想作一定的修改,这就需要采用方法的重写。
11.什么是多态?实现多态的方法有哪些?
多态是指一个程序中有多个同名的不同方法,在Java中有两种多态,一种是使用方法的重载实现多态,另一种是使用方法的覆盖实现多态。
方法:"重载"和“重写”
12.接口有哪些特征?如何定义和实现接口?
特征:(1) 一个Java接口是一些方法特征的集合,这些方法特征当然来自于具体方法,但一般都是来自于一些在系统中不断出现的方法。(2) 一个接口只有方法的特征,而没有方法的实现。因此这些方法在不同的地方被实现时,可以具有完全不同的行为。(3) Java接口还可以定义public的常量。Java接口本身没有任何实现,而只描述public行为. (4) Java接口中的方法只能是抽象和公开的,Java接口不能有构造子。Java接口可以由public、static和final的属性。(5) 接口和类的最重要的区别是,接口仅仅描述方法
的特征,而不给出方法的实现;而类不仅给出方法的特征,而且给出方法的实现。因此,接口把方法的特征和方法的实现分割开来。(6) 接口是可插入性的保证。(7) Java设计师应当主要使用Java接口和抽象Java类将软件单位与内部和外部耦合起来。即应当使用Java接口和抽象Java类而不是具体类进行变量的类型声明、参量的类型声明、方法的返回类型声明,以及数据类型的转换等。(8) Java接口(以及Java抽象类)一般用来作为一个类型的等级结构的最高层。(9) 混合...
定义接口:使用interface来定义一个接口。接口定义同类的定义类似,也是分为接口的声明和接口体,其中接口体由常量定义和方法定义两部分组成。
实现接口:接口在定义后,就可以在类中实现该接口。在类中实现接口可以使用关键字implements,其基本格式如下:
[修饰符] class <类名> [extends 父类名] [implements 接口列表]{
}
13.包的作用是什么?如何建立包和引用包?
答:常用的包及作用:
java.util是JA V A的utility工具包
https://www.wendangku.net/doc/2417756470.html,ng是JA V A的language核心语言包
java.awt是JA V A的abstract window toolkit,抽象窗口工具包
java.applet是创建APPLET的必须包
https://www.wendangku.net/doc/2417756470.html,是JA V A有关网络操作的包
java.io是JA V A的输入输出流的包
java.sql是JA V A的数据库操作包
javax.swing是新的界面包
javax开头的都是扩展包
建立只需在程序的最前面增加(其他也类似):
import java.util.*;
14.JavaApplet中通常包括方法init(),start(),stop(),
destroy(),说明这些方法的作用。
init()方法
这个方法主要是为Applet的正常运行做一些初始化工作。当一个Applet被系统调用时,系统首先调用的就是该方法。通常可以在该方法中完成从网页向Applet传递参数,添加用户界面的基本组件等操作。
start()方法
系统在调用完init()方法之后,将自动调用start()方法。而且,每当用户离开包含该Applet的主页后又再返回时,系统又会再执行一遍start()方法。这就意味着start()方法可以被多次执行,而不像init()方法。因此,可把只希望执行一遍的代码放在init()方法中。可以在start()方法中开始一个线程,如继续一个动画、声音等。
stop()方法
这个方法在用户离开Applet所在页面时执行,因此,它也是可以被多次执行的。
它使你可以在用户并不注意Applet的时候,停止一些耗用系统资源的工作以免影响系统的运行速度,且并不需要人为地去调用该方法。如果Applet中不包含动画、声音等程序,通常也不必实现该方法。
destroy()方法
与对象的finalize()方法不同,Java在浏览器关闭的时候才调用该方法。Applet是嵌在HTML文件中的,所以destroty()方法不关心何时Applet被关闭,它在浏览器关闭的时候自动执行。在destroy()方法中一般可以要求收回占用的非内存独立资源。(如果在Applet仍在运行时浏览器被关闭,系统将先执行stop()方法,再执行destroy()方法。
五、编程题
1. 编写一段application程序,计算梯形的面积。(共40分)
(1)创建一个类,类名为学生姓的拼音加上学号(例如:学生“张三”学号1,类名为zhang1),
在该类中添加属性:
成员变量x,y,h(梯形的上底、下底和高):类型为单精度浮点型数据
一个构造方法(有三个参数),用于为梯形的上底、下底和高进行赋值
一个成员方法:area() 返回值为梯形的面积
(2)编写主类(类名为N1),利用构造方法赋值(x,y,h分别为2,4,8)创建对象a1,显示
输出梯形的面积。
import java.util.*;
class N1
{
public static void main(String[] args)
{
deng44 de=new deng44();
de.area();
}
}
class deng44
{
float x=2;
float y=4;
float h=8;
float s;
public void area()
{
s=(x+y)*8/2;
System.out.println("梯形的面积="+s);
}
}
2. 编写Application程序,模拟银行存取款业务。
1)建银行帐户类bank,
添加变量:储户现有款项account(int型)
添加方法:
●存款的方法income:带有一个参数,用来表示存入的钱数(int型),无返回值。
●取款的方法takeout:带有一个参数,用来表示取出的钱数(int型),无返回值。
●显示余额的方法show:无参数,无返回值。
2)建立主类C1,创建对象(模拟储户名zhang3),存款1000,取款500,显示余额。3. 编写Application程序:
1)创建一个类矩形类Triangle:
成员变量a,b(a为底,b为高);
构造方法:为a,b赋值;
添加两个成员方法:分别计算周长和面积。
2)编写主类,利用Triangle输出a=2,b=3时(使用构造方法赋值)矩形的周长和面积。import java.util.*;
class Triangle
{
public static void main(String[] args)
{
deng44 de=new deng44();
de.area();
de.Perimeter();
}
}
class deng44
{
int a=2;
int b=3;
int s;
int zc;
public void area()
{
s=a*b;
System.out.println("矩形的面积="+s);
}
public void Perimeter()
{
zc=(a+b)*2;
System.out.println("矩形的周长="+zc);
}
}
4.首先定义一个StringBuffer,类对象s,然后通过append()方法为对象s添加26个小写字母。要求每次添加一个字母,共添加26次。(字母a的编码对应整数为97,b为98,以此类推)
5.利用数学类提供的平方根方法计算并输出1.0,2.0,3.0,…,10.0的平方根之和。import java.util.*;
class Ping
{
public static void main(String[] args)
{
double sum=0;
for (double n=1.0;n<11.0 ;n++ )
{
sum=Math.sqrt(n)+sum;
}
System.out.println("1.0~10.0的平方根的和为:"+sum);
}
}
6.请将下面程序补充完整。说明程序的类型、运行结果和字节码文件名。
//程序文件名为MyApplication.java
public class MyApplication
{public main(String[] args)
{System.out.println("Welcom to Java World");}
}
7.请将下面程序补充完整。说明程序类型、运行结果和字节码文件名。
//程序文件名为Appletl.java
import java.awt.*;
import java.applet.*;
public class____Appletl__ extends Applet
{public void paint(Graphics g)
{g.drawString("Welcom to Java World”,20,20);}
}
为上面程序编写一个HTML文件,将Appletl.class字节码文件像入嵌入其中。
8.编写一个Java Applicatin程序。程序中首先定义一个三行四列的二维数组,然后利用属性length输出数组的行数和各行的列数。
import java.util.*;
public class shuzu
{
public static void main(String[] args)
{
int shu[][]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};
System.out.println("该数组为:");
for (int i=0;i<3 ;i++ )
{
System.out.println(shu[i][0]+"\t"+shu[i][1]+"\t"+shu[i][2]+"\t"+shu[i][3]);
}
System.out.println(" ");
System.out.println("数组的行数为:"+shu.length);
System.out.println("第一行的列数为:"+shu[0].length);
System.out.println("第二行的列数为:"+shu[1].length);
System.out.println("第三行的列数为:"+shu[2].length);
}
}
9.编写程序,根据考试成绩的等级打印出百分制分数段。设:A为90分以上,B为80分以上,C为70分以上,D为60分以上,E为59分以下。要求在程序中使用开关语句。
public class Student{
public static void main(String args[]){
char grade='C';
switch(grade){
case'A':System.out.println(grade+": 90~100");
break;
case'B':System.out.println(grade+":80~89");
break;
case'C':System.out.println(grade+":70~79");
break;
case'D':System.out.println(grade+": 60~69");
break;
case'E':System.out.println(": <60");
break;
default:System.out.println("输入有误!");
}
}
}
10.编写程序,计算n的阶乘(n!),设n=10。import java.util.*;
public class Triangle
{
public static void main(String[] args)
{
int n=10;
for (int i=1;i<10;i++)
{
n=n*i;
}
System.out.println("10的阶乘为:"+n);
}
}
或
class Test
{
static int loop(int max,int min){
int v,m,n;
v = 0;
m = max;
n = min;
while(m-- > n){
v += m;
}
return v;
};
public static void main(String[] args)
{
int rs = Test.loop(10,0);
System.out.println(rs);
}
}
11.写出下面程序的输出结果。
public class AreaClass
{public static void main(String[]args)
{System.out.println(“边长为4的正方形面积是”+area(4));
System.out.println(“边长为4的正方形周长是”+clrcumference(4));
static double circumference(double len)
{return 4*len;}
static double area(double len)
{return len*len;} }
12.将下面程序补充完整,并写出输出结果。
class Myclass
{__private_ int y:5;__//定义y为私有变量
___public_ void show()___{___//定义show()为公有方法
System.out.println(“y:”+y);
} }
public class·UseMyclass
{public static void main(String args[])
{____Myclass Ob=new Myclass()___ ;//定义Myclass类的对象Ob ____Ob.show()_____;//调用方法show()
} }
13.指出下面程序中的错误,并修改正确。
class Class2
{private int y;
private void show()
{System.out.println(“show method is private”);}
}
public void usesecret()
{
S ystem.out.println(“XXXXXYYYYY”);
};
public class Classl
{public static void main(String args[])
{Class1 Ob=new Class1();
https://www.wendangku.net/doc/2417756470.html,esecret();
Ob.show();
} }
14.定义student类,其中包括四个私有变量(name,age,sex,score)、一个构造方法和show ()方法。各成员的含义如下:
*变量name为字符串类型String,用于存储学生的姓名。
*变量age为int类型,用于存储学生的年龄。
*变量sex为boolean类型,用于存储学生的性别,男生为false,女生为true。
*变量score为double类型,用于存储学生的成绩。
*构造方法包括四个参数,用于为变量(name,age,sex和score)赋值。
*show()方法无参数,用于输出变量(name,age,sex和score)的值。
public class Student {
private String name;
private int age;
private boolean sex;
private double score;
public Student(String name, int age, boolean sex, double score) {
super();
https://www.wendangku.net/doc/2417756470.html, = name;
this.age = age;
this.sex = sex;
this.score = score;
}
public void show() {
System.out.println("name = " + https://www.wendangku.net/doc/2417756470.html, + ";" + "age = " + this.age
+ ";" + "sex = " + this.sex + ";"+ "score = " + this.score + ";");
}
public static void main(String[] args) {
Student stu = new Student("dengqizhi", 19, false, 100D);
stu.show();
}
}
15.编写一个字符界面的Java Application 程序,接受用户输入的10个整数,并输出这10个整数的最大值和最小值。
import java.util.*;
public class A
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
System.out.println("请输入10个任意的整数:");
int max = Integer.MIN_V ALUE;
int min = Integer.MAX_V ALUE;
for (int i = 0; i < 10; i++)
{
int j = in.nextInt();
if (max < j) max = j;
if (min > j) min = j;
}
System.out.println("最大值为" + max);
System.out.println("最小值为" + min);
}
}
16、编程实现:从键盘输入10个整数,求这10个数中的最大值和最小值。
import java.util.Scanner;
class test7
{
public static void main(String[] args)
{
int i=0;
int shu[];
shu=new int[10];
Scanner input =new Scanner(System.in);
while (i<10)
{
System.out.print("请输入第"+(i+1)+"个数:");
shu[i]=input.nextInt();
i++;
}
int max=shu[0];
int min=shu[0];
for (i=0;i<10 ;i++ )
{
if (max { max=shu[i]; i++; } } System.out.println("该数组的最大值为"+max); for ( i=0;i<10 ;i++ ) { if (min>shu[i]) { min=shu[i]; i++; } } System.out.println("该数组的最小值为"+min); } } 17、设有一字符串数组中保存你5个好友的名字,从键盘输入一个字符串,判断是否为你5个好友之一的名字。 import java.util.*; public class caiming { public static void main(String[] args) { String shu[]; shu=new String[5]; shu[0]="yangguo"; shu[1]="yinxin"; shu[2]="xina"; shu[3]="wuji"; shu[4]="mksun"; int i=1; System.out.print("请猜数组中的一个好友名:"); Scanner input = new Scanner(System.in); String shuru=input.next(); if (shu[0].equals(shuru)||shu[1].equals(shuru)||shu[2].equals(shuru)||shu[3].equals(shuru)||shu[4].equ als(shuru)) { System.out.print("你猜对了!"); } else System.out.print("你猜错了!"); } } 18、编写程序:自定义一个方法void power(int x,int y),其功能是计算整数x的y次方,并在主方法中测试。 import java.util.*; public class shuzu { public static void main(String[] args) { Scanner input=new Scanner(System.in); System.out.print("请输入X的值:"); int x=input.nextInt(); System.out.print("请输入y的值:"); int y=input.nextInt(); tpower po=new tpower(); po.power(x,y); } } class tpower { int x; int y; public void power(int x,int y) { this.x = x; this.y = y; int zong=1; for ( zong=1; y>0 ;y-- ) { zong=x*zong; } System.out.println("整数x的y次方="+zong); } }