第 1 章:计算机、程序和 Java 复习题概述
1.1 什么是硬件和软件?
答:硬件是指计算机的可见物理部分;软件是计算机中控制硬件并使其执行特定任务的无形指令。
1.2 列出计算机的 5 个主要硬件组件。
答:①中央处理器;②记忆;③输入装置;④ 输出装置;⑤存储设备。
1.3 缩写“CPU”代表什么?
答:CPU的全称是Central Processing Unit,中央处理器。
1.4 测量 CPU 速度的单位是什么?
答:单位是赫兹HZ,现在通常以Mhz、Ghz的顺序来测量。
1.5 什么是位?什么是字节?
答:比特是计算机中物理存储的最小单位;8 位是一个字节。
1.6 内存是干什么用的?RAM 代表什么?为什么内存叫RAM?
答:内存的用途:用来存储程序和程序需要的数据;RAM(Random-Access Memory)表示随机存取存储器;因为内存可以按任意顺序访问字节,所以称为RAM(按功能划分)。
1.7 衡量内存大小的单位是什么?
答案:GB(千兆字节)
1.8 衡量磁盘大小的单位是什么?
答案:TB(太字节)
1.9 内存和持久存储的主要区别是什么?
答:内存是一种易失性存储介质(断电后丢失),存储容量小c语言程序设计课本答案,传输速度快;永久存储设备是一种非易失性存储介质(断电后可保留),存储容量大,传输速度慢。
1.10 CPU 能理解什么语言?
答:机器语言。
1.11 什么是汇编语言?
答:汇编语言可以用简短的描述词来表示每条机器语言指令,是一种低级语言。
1.12 什么是汇编程序?
答:汇编程序可以将汇编语言转换为机器语言。
1.13 什么是高级编程语言?
A:和英语很像,易于学习和使用的编程语言被称为高级编程语言。
1.14 什么是源程序?
答:用高级编程语言编写的程序称为源程序。
1.15 什么是解释器?
答:解释器会一一读取源代码中的语言,并立即翻译成机器码或虚拟机码,然后立即运行。
1.16 什么是编译器?
答:编译器将整个源代码翻译成机器码文件,然后执行机器码文件。
1.17 解释语言和编译语言有什么区别?
A:解释型语言在运行时将程序翻译成机器语言,效率相对较低,但具有良好的跨平台性能,例如Java和Python。
编译语言在执行程序之前有一个单独的编译过程。把程序翻译成机器语言就不用再翻译了,效率很高,比如C、C++。
1.18 什么是操作系统?列出一些流行的操作系统?
答:操作系统(Operation System,简称OS)是计算机上运行的最重要的程序,它可以管理和控制计算机的各种活动。
比较流行的操作系统是 Windows、MacOS 和 Linux。
1.19 操作系统的主要任务是什么?
答:①控制和监视系统的各种活动;②分配和分配系统资源。
1.20 什么是多道程序、多线程和多处理?
答:①多道程序:通过共享CPU,允许多个程序同时执行的编程。②多线程:运行单个程序同时执行多个任务。③多处理(multiprocessing,也称并行处理):是指使用两个或多个处理器共同并行执行子任务,然后将子任务的结果组合起来,得到整个任务的结果。
1.21 谁发明了Java?现在哪家公司拥有Java?
答:Java 是由 Sun 的 James Grosling 领导的团队开发的;甲骨文现在拥有 Java。
1.22 什么是 Java 小程序?
答:在 Web 浏览器中运行的 Java 程序称为 Java 小程序。
1.23 Android 使用什么编程语言?
答案:Java、Kotlin
1.24 什么是 Java 语言规范?
答:Java语言规范(Java language specification)是语言的技术定义,包括Java编程语言的语法和定义。
1.25 JDK 代表什么?
答:Java 开发工具包(Java Development Toolkit)是独立程序的集合,每个程序都是从命令行调用的,用于开发和测试 Java 程序。
1.26 IDE 代表什么?
答:集成开发环境(Integrated Development Environment)
1.27 NetBeans 和 Eclipse 之类的工具是否是与 Java 不同的语言?还是它们是 Java 的方言或扩展?
A:不,这些只是方便Java开发的开发工具,也就是IDE
1.28 什么是关键字?列出一些 Java 关键字。
A:关键字是Java本身具有特殊含义的词,不能在程序中用于其他用途。例如类、静态、无效
1.29 Java 区分大小写吗?Java 关键字是大写还是小写?
A:Java 区分大小写;关键字是小写的。
1.30 什么是注解?编译器会忽略注释吗?如何识别一行和一条评论?
答:①注释主要用于说明程序是做什么的;②评论将被忽略;③// 和 /*/ 和 /* **/
1.31 在控制台上打印字符串的语句是什么?
答案:System.out.println();
1.32 给出以下代码的输出:
public class Test {
public static void main(String[] args) {
System.out.println("3.5 * 4 / 2 - 2.5 is ");
System.out.println(3.5 * 4 / 2 - 2.5);
}
}
答案:3.5 * 4 / 2 – 2.5 是
4.5
1.33 Java源程序的文件后缀是什么,Java字节码文件的后缀是什么?
答:①Java源程序文件后缀为.java;②Java字节码文件后缀为.class。
1.34 Java 编译器的输入输出是什么?
A:输入是源代码,输出是字节码。
1.35 编译Java程序的命令是什么?
答案:javac***.java
1.36 运行Java程序的命令是什么?
答案:java***
1.37 什么是JVM?
答:Java虚拟机,可以解释java字节码的程序。
1.38 Java 可以在任何机器上运行吗?在一台计算机上运行 Java 需要什么?
答:可以,只要安装了java虚拟机即可;需要java虚拟机。
1.39 如果运行程序时出现NoClassDefFoundError错误,是什么原因导致的?
答:运行一个不存在的类文件。
1.40 如果运行程序时出现NoSuchMethodError错误,是什么原因导致的?
答:没有main方法或者main方法打错了。
1.41 使用行尾括号样式,根据编程样式和文档指南重新格式化以下程序。
public class Test
{
// Main method
public static void main(String[] args) {
/** display output */
System.out.println("Welcome to Java");
}
}
回答:
public class Test {
// Main method
public static void main(String[] args) {
/** display output */
System.out.println("Welcome to Java");
}
}
1.42 什么是语法错误(编译错误)、运行时错误和逻辑错误?
答:①编译过程中出现的错误称为语法错误或编译错误;② 导致程序异常中断的错误称为运行时错误;③ 当程序没有按预期工作时 执行方法时出现逻辑错误。
1.43 给出了语法错误、运行时错误和逻辑错误的示例。
回答:
语法错误:几个关键字;运行时错误:1除以0的计算场景;逻辑错误:小数点计算时给出整数,导致计算结果不正确。
1.44 如果忘记引用字符串会出现什么样的错误?
答:语法错误。
1.45 如果一个程序需要读取一个整数,用户输入一个字符串,程序运行时会出现什么错误?这是什么错误?
答:会产生数据类型错误;这是一个运行时错误。
1.46 假设你写了一个计算矩形周长的程序,但是写错了计算矩形的面积。这是什么错误?
答:这是一个逻辑错误。
1.47 指出并修复以下代码中的错误。
public class Welcome {
public void main(String[] args) {
System.out.println('Welcome to java!);
}
}
回答:
主要方法缺少关键字静态。输出语句中需要双引号。
正确的代码如下所示:
public class Welcome {
public static void main(String[] args) {
System.out.println("Welcome to java!");
}
}
编程练习题
1.1(显示三条消息) 编写一个程序c语言程序设计课本答案,上面写着 Welcome to Java、Welcome to Computer Science 和 Programming is fun。
回答:
public class Exercise1_1 {
public static void main(String[] args) {
System.out.println("Welcome to Java");
System.out.println("Welcome to Computer Science");
System.out.println("Programming is fun");
}
}
1.2(显示 5 条消息)编写一个程序,显示 Welcome to Java 5 次。
回答:
public class Exercise1_2 {
public static void main(String[] args) {
System.out.println("Welcome to java");
System.out.println("Welcome to java");
System.out.println("Welcome to java");
System.out.println("Welcome to java");
System.out.println("Welcome to java");
}
}
1.3 (显示模式) 编写一个程序来显示以下模式:
回答:
public class Exercise1_3 {
public static void main(String[] args) {
System.out.println(" J A V V A");
System.out.println(" J A A V V A A");
System.out.println("J J AAAAA V V AAAAA");
System.out.println(" JJ A A V A A");
}
}
1.4 编写一个显示下表的程序:
啊^2a^3
1
1
1
2
4
8
3
9
27
4
16
64
解开:
public class Exercise1_4 {
public static void main(String[] args) {
System.out.println("a" + " " + "a^2" + " " + "a^3");
System.out.println(1 + " " + (1 * 1) + " " + (1 * 1 * 1));
System.out.println(2 + " " + (2 * 2) + " " + (2 * 2 * 2));
System.out.println(3 + " " + (3 * 3) + " " + (3 * 3 * 3));
System.out.println(4 + " " + (4 * 4) + " " + (4 * 4 * 4));
}
}
1.5(计算表达式)编写一个程序,显示以下公式的结果。
解开:
public class Exercise1_5 {
public static void main(String[] args) {
System.out.println((9.5 * 4.5 - 2.5 * 3) / (45.5 - 3.5));
}
}
结果是 0.8392857142857143
1.6(序列之和)编写一个程序,显示 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 的结果。
解开:
public class Exercise1_6 {
public static void main(String[] args) {
System.out.println(1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9);
}
}
结果是 45
1.7(近似求p)p可以使用以下公式计算:
π=4*(1-1/3+1/5-1/7+1/9-1/11+…)
编写一个程序,显示 4*(1-1/3+1/5-1/7+1/9-1/11) 和 4*(1-1/3+1/5-1/ 7+1/9-1/11+1/13)的结果。在程序中用1.0代替1。
解开:
public class Exercise1_7 {
public static void main(String[] args) {
System.out.println(4 * (1.0 - 1.0 / 3 + 1.0 / 5 - 1.0 / 7 + 1.0 / 9 - 1.0 / 11));
System.out.println(4 * (1.0 - 1.0 / 3 + 1.0 / 5 - 1.0 / 7 + 1.0 / 9 - 1.0 / 11 + 1.0 / 13));
}
}
结果是:
2.9760461760461765
3.2837384837384844
1.8(圆的面积和周长) 编写一个程序,使用以下公式计算并显示半径为 5.5 的圆的面积和周长。
周长 = 2 x 半径 x π
面积 = 半径 x 半径 x π
解开:
public class Exercise1_8 {
public static void main(String[] args) {
System.out.println("周长 = " + (2 * 5.5 * 3.14));
System.out.println("⾯积 = " + (5.5 * 5.5 * 3.14));
}
}
周长 = 34.54
面积 = 94.985
1.9 (矩形的面积和周长) 编写一个程序,使用以下公式计算并显示宽度为 4.5、高度 7.9 的矩形的面积和周长.
面积 = 宽 x 高
解开:
public class Exercise1_9 {
public static void main(String[] args) {
System.out.println("⾯积 = " + (4.5 * 7.9));
System.out.println("周长 = " + (4.5 * 2 + 7.9 * 2));
}
}
面积 = 35.5500000000000004
周长 = 24.8
1.10(以英里为单位的平均速度)假设跑步者在 45 分 30 秒内跑完 14 公里。编写程序以英里/小时显示平均速度值。(请注意,1 英里等于 1.6 公里。)
解开:
public class Exercise1_10 {
public static void main(String[] args) {
System.out.println("平均速度值为" + (14.0 / 1.6) / ((45.0 * 60 + 30) / (60 * 60)) + "英⾥每⼩时");
}
}
平均速度值为 11.538461538461538 英里/小时
*1.11(人口估计)美国人口普查局根据以下假设进行人口估计:
public class Exercise1_11 {
public static void main(String[] args) {
System.out.println(312032486 + (5 * 365 * 24 * 60 * 60 / 7) - (5 * 365 * 24 * 60 * 60 / 13) + (5 * 365 * 24 * 60 * 60 / 45));
}
}
结果是 325932970
1.12(以公里为单位的平均速度)假设跑步者在 1 小时 40 分 35 秒内跑了 24 英里。编写一个程序以每小时公里数显示平均速度值。(注意 1 英里等于 1.6 公里。)
解开:
public class Exercise1_12 {
public static void main(String[] args) {
System.out.println("平均速度值为 " + (24 * 1.6) * (60 * 60) / (60 * 60 + 40 * 60 + 35) + " 公⾥每⼩时");
}
}
平均速度值为 22.906379453189732 公里/小时。
*1.13 (代数:求解 2 × 2 线性方程组)可以使用克莱默规则求解以下 2 × 2 线性方程组:
ax + by = e
cx + dy = f
x = (ed – bf) / (ad – bc)
y = (af – ec) / (ad – bc)
编写程序求解下列方程组并显示 x 和 y 的值。
3.4x + 50.2y = 44.5
2.1x + 0.55y = 5.9
解开:
public class Exercise1_13 {
public static void main(String[] args) {
double a = 3.4;
double b = 50.2;
double c = 2.1;
double d = 0.55;
double e = 44.5;
double f = 5.9;
System.out.println("x = " + (e * d - b * f) / (a * d - b * c));
System.out.println("y = " + (a * f - e * c) / (a * d - b * c));
}
}
x = 2.623901496861419
y = 0.7087397392563978
请登录后发表评论
注册
社交帐号登录