Java习题参考答案(1-10)

上传人:tia****nde 文档编号:36843057 上传时间:2018-04-03 格式:DOC 页数:46 大小:475.50KB
返回 下载 相关 举报
Java习题参考答案(1-10)_第1页
第1页 / 共46页
Java习题参考答案(1-10)_第2页
第2页 / 共46页
Java习题参考答案(1-10)_第3页
第3页 / 共46页
Java习题参考答案(1-10)_第4页
第4页 / 共46页
Java习题参考答案(1-10)_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《Java习题参考答案(1-10)》由会员分享,可在线阅读,更多相关《Java习题参考答案(1-10)(46页珍藏版)》请在金锄头文库上搜索。

1、第 1 章习题解答1. 答:程序设计语言可分为机器语言、汇编语言、高级语言。机器语言的每条指令都 是一串二进制代码,完全依赖于硬件系统,不同的机器有着不同的指令系统,指令难以记 忆,程序难以阅读。汇编语言用助记符表示计算机指令,程序要经过汇编程序翻译成机器 语言才能运行。优点是编写程序比用机器语言节省时间,发生的错误少,比机器语言容易 修改。缺点是面向机器。高级语言程序几乎不用修改就可以用在不同型号的计算机上,比 汇编语言容易学习,编程用的时间少、程序容易维护等。 2. 答:面向过程是一种以过程为中心的编程方法,就是分析出解决问题的步骤,然后 用函数把这些步骤一步一步实现。面向对象的方法是以对

2、象为中心的编程方法,它的基本 思想是将要构造的软件系统表示为对象集合,其中每个对象是一组数据和对数据的操作组 成的封装体,对象之间的联系通过消息传递实现。 3. 答:Java 语言的特点:简单的、面向对象的、分布式的、解释型的、平台独立的、 可移植的、健壮的、安全的、高性能的、多线程的、动态的。 4. 答:开发 Java 程序通常分 3 步:(1)编辑源程序;(2)编译源程序;(3)执行 程序。 5. 答:JDK 的编译命令是 javac.exe,命令格式:javac Welcome.java。如果编译结果报 告找不到文件,可能是类名拼写错误或路径错误。 6. 答:可获得字节码文件,文件扩展名

3、为.class。如果一个 Java 文件中定义了多个类, 包括外部类、内部类、匿名内部类,每一个类都会生成对应的字节码文件。 7. 答:使用 Java 解释器,即 java.exe,命令格式:java Welcome (无扩展名)。 8. 答: (1)该程序缺少 main()方法。输出语句不能直接写在类体中。 (2)语句缺少分号。 (3)缺少类的定义。 (4)Main()方法不能作为程序执行的入口点,应该定义 main()方法。 9. 答:保存为 ClassTwo.java 文件。Java 源程序文件的扩展名是.java,Java 字节码文 件的扩展名是.class。 10. 参考程序:pub

4、lic class ShowStarspublic static void main(String args) for(int i = 9; i 0; i = i - 2)for(int j = i; j 0 ; j -)System.out.print(“*“);System.out.println(); / 换行11. 答:编译型语言写的程序执行前需要一个专门的编译过程,把程序编译成为机器 语言的文件,比如 exe 文件,以后要运行的时候就不用重新翻译了,直接使用编译的结果 就行了(exe 文件) ,因为翻译只做了一次,运行时不需要翻译,所以编译型语言的程序执 行效率高。 解释型语言专门有

5、一个解释器能够直接执行程序,每个语句都是执行的时候才翻译。 这样解释性语言每执行一次就要翻译一次,效率比较低。Java 程序是半编译半解释型的。Java 程序首先被编译成一种称为字节码的中间代码, 这种中间代码只有在 Java 虚拟机上才能运行,运行时是解释执行的。 12. 答:Java 平台是在 Windows、Linux 等系统平台上的程序运行平台,主要由 Java 虚拟机(Java VM)和 Java 应用程序接口(Java API)两部分组成。 Java 虚拟机是在一台真正的机器上用软件方式实现的一台假想机。Java 虚拟机是运行 Java 程序必不可少的环境。编译后的 Java 程序

6、指令由 JVM 执行。 JVM 的具体实现包括:指令集(等价于 CPU 的指令集) 、寄存器组、类文件格式、栈、 垃圾收集堆、内存区。 13. 答:JVM 使用的代码存储在.class 文件中。JVM 的部分指令很像真正的 CPU 指令, 包括算术运算、流控制和数组元素访问等。 Java 虚拟机规范提供了编译所有 Java 代码的硬件平台。因为编译是针对假想机的,所 以该规范能让 Java 程序独立于平台。它适用于每个具体的硬件平台,以保证为 JVM 编译 的代码的运行。JVM 不但可以用软件实现,而且可以用硬件实现。第 2 章习题解答1. 答:标识符必须以字符、下划线(_)或美元符($)开头

7、,其后可以是字符、下划 线、美元符或数字,长度没有限制。 错误的标识符:以数字开头 不允许使用连字符“-” 2. 答:Java 共有 8 种基本数据类型。字节型、短整型、整型、长整型、单浮点型、双 浮点型、布尔类型、字符类型。int 型数据的最大值是-231,最小值是 231-1。 Java 中常用的引用数据类型有数组、类、接口、枚举类型四种。 3. 答:常量是在程序运行过程中,其值不能被改变的量。变量是在程序运行中其值可 以改变的量。 Java 语言的字符型常量是用单引号将字符括起来单个字符;字符串常量是用双引号括 起来的一个或多个字符组成,字符串不是 Java 的基本数据类型,属于引用类型

8、。 4. 答:Java 语言使用统一码(Unicode)为字符编码,它是由 Unicode Consortium 建立 的一种编码方案。Unicode 字符集是用两个字节(16 位)的无符号整数为字符编码,可表 示 65536 个字符。它可以表示各国的语言符号,包括希腊语、阿拉伯语、日语以及汉语等。5. 答: 算术运算符有加(+) 、减(-) 、乘(*) 、除(/)和取余数(%)5 个二元运算符和正 (+) 、负(-) 、自增(+) 、自减(- -)4 个一元运算符。 关系运算符有大于() 、小于(=) 、小于等于()和无符号右移()3 种。 赋值运算符主要有两类,一类是使用等号(=)赋值,它

9、把一个表达式的值赋给一个 变量或对象;另一类是扩展的赋值运算符,如+=。 6. 答:自动类型转换也称加宽转换,它是指将具有较少位数的数据类型转换为具有较 多位数的数据类型。例如:byte b = 64 ;int i = b ; / 字节型数据 b 自动转换为整型强制类型转换是将位数较多的数据类型转换为位数较少的数据类型,如将 double 型数 据转换为 byte 型数据。其语法是在圆括号中给出要转换的目标类型,随后是待转换的表达 式。例如:byte b = 5; double d = 333.567; b = (byte) d; / 将 double 型值强制转换成 byte 型值 7. 答

10、:尽管 Java 语言提供了 goto 保留字,但不能使用,即不能实现控制的无条件转 移。在 Java 程序中可以使用带标签的 continue 和 break 语句实现将控制转移到指定的标签。 但需要事先定义标签。标签一般在循环的开始定义。 8. 答:先创建一个 java.util.Scanner 类的对象,然后调用其 nextInt()方法、nextDouble() 方法和 nextLine()方法就可以实现从键盘上输入整数、浮点数和字符串。 9. 答:A,B,C,D 10. 答:B,D 11. 答:C 12. 答:D 13. 答:A,D,F 14. 答:A,D 15. 答:去掉 unsi

11、gned,将 b = b-1 改为 b = (byte)(b-1) 16. 答:byte b = 24 short s = 128 int i = 1111 long l = 286331153 char c = A float f = 0.333 double d = 1.001E-5 boolean bool = true17. 答:C,D 18. 答:C 19. 答:C 20. 答:5 21. 答: 3 true true 22. 答:i = 2, j = 2 23. 答:D 24. 答:A,B,F 25. 答:A 26. 答:if(x = y) 改为 if(x = y),while (

12、y-)改为 while (y0) 27. 答:D 28. 答:break; j = I 29. 答:B 30. 参考程序如下:import java.util.Scanner; public class Temperaturepublic static void main(Stringargs)Scanner sc = new Scanner(System.in);System.out.print(“请输入华氏温度:“);double htemp = sc.nextDouble();double ctemp = (5.0 / 9) * (htemp 32);System.out.printf(

13、“摄氏温度为:%8.2f“, ctemp); 31. 参考程序如下:import java.util.Scanner; public class CylinderDemopublic static void main(Stringargs)Scanner sc = new Scanner(System.in);System.out.print(“请输入圆柱底面半径:“);double radius = sc.nextDouble();System.out.print(“请输入圆柱高:“);double height = sc.nextDouble(); System.out.printf(“圆

14、柱的体积:%8.2f“, Math.PI*radius*radius*height); 32. 参考程序如下:import java.util.Scanner; public class Test public static void main(Stringargs)System.out.print(“请输入一个浮点数:“);Scanner sc = new Scanner(System.in);double d = sc.nextDouble();System.out.println(“整数部分:“+(int)d );System.out.println(“小数部分:“+(d (int)d

15、); 33. 参考程序如下:import java.util.Scanner; public class NumCompare public static void main(Stringargs)Scanner sc = new Scanner(System.in);System.out.print(“请输入第一个整数:“);int num1 = sc.nextInt();System.out.print(“请输入第二个整数:“);int num2 = sc.nextInt();System.out.print(“请输入第三个整数:“);int num3 = sc.nextInt();int max,min,mid;if(num1 num2) if(num1 num3) max = num1; if(num2 num3)mid = num2;min = num3;elsemid = num3;min = num2; elsemax = num3; mid = num1;min = num2;elseif(num2 num3) max = num2; if(num1 num3)mid = num1;min = num3; elsemid = n

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号