《Java语言程序设计》(基础篇原书第10版)第二章复习题答案

第二章
2.1:方法里差static,修改为:
public class Test {
public static void main(String[] args) {
double i = 50.0;
double k = i + 50.0;
double j = k + 1;

	System.out.println("j is " + j +
			" and k is " + k);
}

}
2.2:
import java.util.Scanner;

public class Review02_02 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);

	double number = input.nextDouble();
	
	System.out.println (number);
}

}
如果执行下面的代码,输入的是5a,系统会报错,无法运行。
2.3:import java.util.Scanner; 为import明确导入类型,因为包名和文件名都已经确定,所以可以一次性查找定位,执行过程中会提高编译的速度,避免命名冲突。
import java.util.*; 为import通配符导入类型,执行时,编译器会把包名和文件名进行排列组合,然后对所以可能性进行类文件查找定位。
在性能上,两者没有什么差别。
2.4:标识符 miles、Test、$4、apps、radius是合法的标识符;
Java的关键字:class、public、int.
2.5:程序方法里出现了局部变量k没有进行局部变量的声明,赋值,就直接使用。
2.6:局部变量i,j,k必须先声明,然后赋值,再使用,而不可以直接赋值。
2.7:使用常量的好处:1)不必重复输入同一个值; 2)如果必须修改常量值,只需在源代码中的一个地方做改动; 3)给常量赋一个描述性名字会提高程序易读性;
final int SIZE = 20;
2.8:类名、方法名、常量和变量的命名习惯:
1)使用小写字母命名方法名和变量,如果一个名字包含多个单词,就将它们连在一起,第一个单词的字母小写,而后面的每个单词的首字母大写;
2)类名中的每个单词的首字母大写如ComputerArea;
3) 常量中的所有字母大写,两个单词间用下划线连接;
下面的项中:
MAX_VALUE 可以作为常量
Test可以作为类名
read、readDouble 可以作为方法名和变量。
2.9:
public class review02_09 {
public static void main(String[] args) {

	double miles = 100;
	double KILOMETERS_PER_MILE = 1.609;
	double kilometers = miles * KILOMETERS_PER_MILE;
	
	System.out.println("Kilometers 的值为:" + kilometers);
}

}
2.11:求余结果如下:
(1)2
(2)2
(3)-4
(4)-4
(5)0
(6)1
2.12:(100 + 2)% 7 = 4,所以100天后将是周四。
2.13: 25/4的结果为6;结果为浮点数的表达式为 25.0/4 或 25.0/4.0.
2.14:代码结果为:
(1)8
(2)10
(3)4
(4)5
2.15:下列输出结果为:
(1)25 / 4 is 6
(2)25 / 4.0 is 6.25
(3)3 * 2 / 4 is 1
(4)3.0 * 2 / 4 is 1.5
2.16:
System.out.println("the result is " + Math.pow(2,3.5));
2.17:
import java.util.Scanner;

public class review217 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);

	System.out.println("Enter two integers:");
	int m = input.nextInt();
	int r = input.nextInt();
	
	System.out.printf ( "The result is %f " , m * Math.pow(r,2) );
}

}

2.18:float型变量保存了7-8为精确小数位,double型变量保存了15-17位精确小数位。
2.19:12.3、 3e+2、 4e-2、 -334.4、 20.5、 39F是正确的浮点数类型的直接量
2.20:5.2534e+1、 0.52534e+2、 525.34e-1 和52.534是等价的。
2.21:下面中的 5_2534e+1、 5_2 是正确的直接量,因为下划线必须位于两个数字间。
2.22:
a)4 / (3 * (r + 34)) – 9 * (a + b * c) + (3 + d * (2 + a)) / (a + b * d);
b)5.5 * Math.pow(r + 2.5 , 2.5 + t);
2.23:当前的秒数等于总的秒数对60取余;
当前的分钟数等于总的分钟数对60取余;
当前的小时数等于总的小时数对24取余。
2.24:代码运行结果为
14.0
3.0
2.25:b、c说法为真。
2.26:代码输出为:
7
6
7
7

2.27:各种类型的变量可以在一个表达式中进行混合运算。
2.28:double类型的数据转换成int型时,double型数据的小数部分被截去,直接取整数部分;类型转换不改变被类型转换的变量。
2.29:输出结果为:
f is 12.5
i is 12
2.30:输出结果会是
Sales tax is $11
2.31:输出结果为
2.5
2
2.32:(-b + Math.pow(b * b – 4 * a * c , 0.5)) / ( 2 * a );
2.33:输入值为1.99的输出结果为:
1dollars
3quarters
2dimes
0nickels
4pennies
2.34:不在同一个作用域之内是可以的,但是如果在同一个定义域里面不能重复定义相同名字的变量。
2.35:数字以有限的位数存储。当一个变量被陚予一个过大(以存储大小而言)的值,以至无法存储该值,这称为溢出。因为在一个 int 类型变量中可以存储的最大值是 2147483647。2147483648 将超出 int 值的范围;浮点数太小会导致向下溢出。
2.36:溢出会导致运行错误。
2.37:一个取整错误,也称为凑整错误,是在计算得到的数字的近似值和确切的算术值之间
的不同;因为一个变量保存的位数是有限的,因此取整错误是无法避免的。整数不会发生取整错误,浮点数会发生取整错误。

你可能感兴趣的:(《Java语言程序设计》(基础篇原书第10版)第二章复习题答案)