1、第 1 章 Java 程序设计概述1.9 练习思考题1、 Java 运行平台包括三个版本,请选择正确的三项:( )A. J2EE B. J2ME C. J2SE D. J2E解答:A,B,C2、 Java JDK 中反编译工具是:( )A. javac B. javaC. jdb D. javap解答:D3、 public static void main 方法的参数描述是 :( )A. String args B. String argsC. Strings args D. String args解答:A,B4、 在 Java 中,关于 CLASSPATH 环境变量的说法不正确的是:( )A
2、. CLASSPATH 一旦设置之后不可修改,但可以将目录添加到该环境变量中。B. 编译器用它来搜索各自的类文件。C. CLASSPATH 是一个目录列表。D. 解释器用它来搜索各自的类文件。解答:A5、 编译 Java Application 源文件将产生相应的字节码文件,扩展名为( )A. .java B. .classC. .html D. .exe解答:B6、 开发与运行 Java 程序需要经过的三个主要步骤为_类装载_、_字节校验_和_解释执行_。7、 如果一个 Java Applet 源程序文件只定义有一个类,该类的类名为 MyApplet,则类 MyApplet 必须是_Appl
3、et _类的子类并且存储该源程序文件的文件名为_MyApplet.java_。8、 如果一个 Java Applet 程序文件中定义有 3 个类,则使用 Sun 公司的 JDK 编译器 编译该源程序文件将产生_3_个文件名与类名相同而扩展名为_class_的字节码文件。11、编写一个简单的 Java 应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习 Java”和“We are students” 。Java 语言程序设计基础教程 22解答:class MyFirstJavapublic static void main(String args)System.out.println(
4、“你好,很高兴学习 Java”);System.out.println(“We are students”);第 2 章 Java 基本的程序设计结构2.7 练习思考题1、 从下面选项中,选择三个有效的标示符:( )A. IDoLikeTheLongNameClass B. $byte C. const D. _okE. 3_case解答:A,B,D2、 下面哪一项在 java 中是非法的标识符?( )A. $userB. pointC. YouII、 while (false) i = 1;III、 while (!false) i = 0;A、仅仅 IIIB、I 和 IIIC、仅仅 ID、
5、I, II 和 IIIJava 语言程序设计基础教程 33解答:B5、 下列整型数据类型中,需要内存空间最少的是 ( )。A. short B. long C. int D. byte解答:D6、 下面代码执行后,正确的输出结果是:( )public class Example public static void main(String args) int l = 0;do System.out.println(“Doing it for l is:“ + l); while (-l 0);System.out.println(“Finish“);A. Doing it for l is 3
6、B. Doing it for l is 1C. Doing it for l is 2D. Doing it for l is 0E. Doing it for l is 1 FinishF. Finish解答:D,F7、 若有定义 int a=1,b=2; 那么表达式(a+)+(+b) 的值是:( )A. 3 B. 4C. 5 D. 6解答:B8、 若有定义 int a=9,b=6; 那么 ab 的值是:( )A. 0 B. 1C. false D. true解答:D9、 假定有变量定义: int k=7,x=12; 那么能使值为 3 的表达式是:( )A. x%=(k%=5) B. x%
7、=(k-k%5)C. x%=k-k%5 D. (x%=k)-(k%=5) 解答:D10、执行完以下代码 int x = new int25;后,以下说明正确的是:( )A. x24为 0 B. x24未定义 C. x25为 0 D. x0为空解答:A11、Java 应用程序的 main 方法中有以下语句,则输出的结果是( ) 。Java 语言程序设计基础教程 44int x=2,3,-8,7,9; int max=x0; for(int i=1;imax) max=xi; System.out.println(max); A. 2 B. -8C. 7 D. 9解答:12、设 x = 1 , y
8、 = 2 , z = 3,则表达式 yz/x 的值是( )A. 3 B. 3.5 C. 4 D. 5解答:A13、有整型数组:int x=2,33,88,5,10;,则调用方法 Arrays.sort(x) 后,数组 x 中的元素值依次是?( ). 88 33 10 5 2B. 2 5 10 33 88C. 88 10 2 33 5D. 5 33 2 10 88解答:14、下列语句有错误的是:( )A. int a; B. int b=new int10; C. int c=new int; D. int d=null;解答:C15、下列语句有错误的是:( )A. int a=new int5
9、5; B. int b=new int55;C. int c=new int55; D. int d=new int5,5;解答:D16、关于下面的程序,正确的结论是_。public class ex4_7public static void main(String args)int a=new int5;boolean b=new boolean5;System.out.print(a1);System.out.println(b2);A. 运行结果为 0false B. 运行结果为 1trueJava 语言程序设计基础教程 55C. 程序无法通过编译 D. 可以通过编译但结果不确定解答:A
10、17、在 Java 的基本数据类型中,char 型采用 Unicode 编码方案,每个 Unicode 码占用_2_字节内存空间,这样,无论是中文字符还是英文字符,都是占用_2_字节内存空间。18、设 x = 2 ,则表达式 ( x + + )3 的值是_0_。19、若 x = 5,y = 10,则 x = y 的逻辑值分别为_true_和_false _。20、设有数组定义:int MyIntArray = 10, 20, 30, 40, 50, 60, 70 ;则执行以下几个语句后的输出结果是: 120 。int MyIntArray = 10, 20, 30, 40, 50, 60, 7
11、0 ;int s = 0;for (int i = 0; i =0 SumRope/=2; System.out.print(“需要“+sumDay+“天“); /filename:Dragon.javapublic class Dragon public static void main(String args) final int size = 5;int ary = new intsizesize;int num = 1;for(int row = 0; row = 0; i-) aryicol+ = num+; Java 语言程序设计基础教程 2121 for(int aryItem
12、: ary) for(int value: aryItem) if(value != 0) System.out.print(value + “ “); System.out.println(); /filename:Factorial.javaimport java.util.*;public class Factorial public int getFac(int m) if(m=1) return 1; else return m*getFac(m-1); public static void main(String args) Factorial fac=new Factorial(
13、);/System.out.println(fac.getFac(4);int i,n,sum=0;Scanner reader=new Scanner(System.in);System.out.print(“请输入 n:“);n=reader.nextInt();for(i=1;i=n;i+) sum+=fac.getFac(i); Java 语言程序设计基础教程 2222System.out.println(“1 到 n 的阶乘的和是:“+sum); /filename:sum.javaimport java.util.*;public class sum public static v
14、oid main(String args) / TODO Auto-generated method stub int n,x=-1;float sum=0;Scanner reader=new Scanner(System.in);System.out.print(“请输入一个整数:“);n=reader.nextInt();for(int i=1;i=n;i+) x = x*(-1); float fac=1; for(int j=1;j=i;j+) fac=fac*j; float k=1/fac; sum=sum+x*k; System.out.println(“sum=“+sum);