javase阶段考试一(Hello,world~数组)测试题及答案,javasehello
javase阶段考试一(Hello,world~数组)测试题及答案,javasehello
一、 简单题(每题5分,共计40分)
1. 简述Java语言的跨平台特性
由于不同的操作系统中都提供了Java虚拟机进行解释执行,因此对于同一份字节码文件来说,可以实现一次编译,到处运行的美名。
2. 写出以下名词的概念和各自作用
jdk - Java开发工具包,只要做Java语言的开发就必须安装该软件。
jre - Java运行时环境,只要运行Java程序就必须安装该软件。
javac.exe - Java语言编译器,用于将高级源代码文件编译为字节码文件。
java.exe - Java语言解释器,用于启动Java虚拟机对字节码文件进行边解释边执行。
JVM - Java虚拟机,用于作为Java语言和操作系统之间的桥梁。
3. 简述Java中变量的基本概念
当需要在程序中记录单个数据内容时,则声明一个变量来记录即可,而变量的本质就是在内存中申请一块存储单元,并且该区域中的数据内容可以发生改变。
由于存储的数据内容不同导致所需的内存空间大小不同,在Java语言中使用数据类型的概念加以描述,并指定该区域一个变量名的概念来记录。
4. 标识符的命名规则
(1)由字母、数字、下划线以及美元$组成,其中数字不能开头。
(2)不能与Java语言中的关键字同名。
(3)区分大小写,长度没有限制但不宜过长。
(4)尽量做到见名知意,支持中文但不推荐使用。
5. 简述Java语言中的所有基本数据类型以及每种数据类型占用内存空间的大小
描述整数的数据类型主要有:byte/short/int/long,分别占用1个/2个/4个/8个字节大小。
描述小数的数据类型主要有:float/double,分别占用4个/8个字节大小。
描述真假的数据类型有:boolean,占用1个字节大小。
描述字符的数据类型有:char,占用2个字节。
6. 请写出if语句的三种语法格式
(1)if(条件表达式) {语句块;}
(2)if(条件表达式) {语句块1;}
else {语句块2;}
(3)if(条件表达式1) {语句块1;}
else if(条件表达式2) {语句块2; }
... ...
else {语句块n;}
7. 请写出声明定义数组的方式
元素类型[] 变量名 = new 元素类型[元素的个数];
元素类型[] 变量名 = {元素1,元素2...};
8. 述单个字节表示的数值范围并写出推导过程。
非负数的表示范围是:0000 0000 ~ 0111 1111 => 0 ~ 127 => 0 ~ 2^7-1
0111 1111 => 64 + 32 + 16 + 8 + 4 + 2 + 1 => 127
负数的表示范围是:1000 0000 ~ 1111 1111 => -128 ~ -1 => -2^7 ~ -2^0
1000 0000 => 0111 1111 => 1000 0000 => 128 => -128
1111 1111 => 0000 0000 => 0000 0001 => 1 => -1
综上所述:
1个字节所能表示的十进制整数范围是:-128 ~ 127,也就是-2^7 ~ 2^7-1。
二、 编程题(每题12分,共计60分)
1. 提示用户输入一个三位数正整数并逆序输出。
/*
编程实现三位数的逆序处理并打印
*/
import java.util.Scanner;
public class TestThreeReverse{
public static void main(String[] args){
//1.提示用户输入一个三位数的正数并使用变量记录
System.out.println("请输入一个三位数的正数:");
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
//2.将输入的三位数进行逆序处理
int ia = num / 100; //拆分百位数
int ib = num %100 / 10; //拆分十位数
int ic = num % 10; //拆分个位数
int res = ic*100 + ib*10 + ia;
//3.打印逆序之后的结果
System.out.println(num + "逆序之后的结果是:" + res);
//System.out.println(num + "逆序之后的结果是:" + ic + ib + ia);
}
}
2. 使用if-else if-else分支结构根据用户输入的成绩判断所在的等级并打印出来。
[90 ~ 100] 打印等级A
[80 ~ 89] 打印等级B
[70 ~ 79] 打印等级C
[60 ~ 69] 打印等级D
[0 ~ 59] 打印等级E
/*
编程实现用户输入成绩等级的判断并打印出来
*/
import java.util.Scanner;
public class TestScore{
public static void main(String[] args){
//1.提示用户输入考试成绩并使用变量记录
System.out.println("请输入考试成绩:");
Scanner sc = new Scanner(System.in);
int score = sc.nextInt();
//2.判断该成绩所在的等级并打印出来
if(score >= 90 && score <= 100){
System.out.println("等级A");
}
else if(score >= 80){
System.out.println("等级B");
}
else if(score >= 70){
System.out.println("等级C");
}
else if(score >= 60){
System.out.println("等级D");
}
else{
System.out.println("等级E");
}
}
}
3. 使用for循环实现1 ~ 10000之间的累加和并打印出来。
/*
编程使用for循环计算1 ~ 10000之间整数的累加和
*/
public class TestForSum{
public static void main(String[] args){
//1.声明一个int类型的变量负责记录累加和
int sum = 0;
//2.打印1 ~ 10000之间的整数的累加和
for(int i = 1; i <= 10000; i++){
sum = sum + i;
}
//3.打印最终的结果
System.out.println("sum = " + sum);
}
}
4. 使用双重循环打印2~200之间的所有素数,素数就是只能被1和本身整除的数。
/*
编程实现使用双重循环打印2~200之间的所有素数
*/
public class TestPrimeNum{
public static void main(String[] args){
for(int i=2;i<200;i++){
boolean flag = true; //默认i是质数
for(int j=2;j<=Math.sqrt(i);j++){
if(i%j == 0){//i肯定不是质数
flag = false;
break;
}
}
if(flag) System.out.println(i);
}
}
}
5. 随机生成5个整数记录到一维数组中,求出最大值和最小值以及累加和并打印出来。
/*
编程实现随机生成5个整数记录到一维数组中,求出最大值和最小值以及累加和
*/
import java.util.Random;
public class TestArr{
public static void main(String[] args){
//1.声明一个数组用于记录生成的随机数
int[] arr = new int[5];
//2.生成5个随机整数
Random ra = new Random();
for(int i = 0; i < arr.length; i++){
arr[i] = ra.nextInt();
//保证每次生成随机数不重复,让生成的随机数与之前的随机数依次比较
for(int j = i-1; j >= 0; j--){
if(arr[i] == arr[j]){
i--; //重新生成一个随机数,来覆盖重复的随机数
break; //表示跳出内层循环,找到重复随机数之后无需再比较后续
}
}
}
//3.打印数组中的所有元素值
for(int i = 0; i < arr.length; i++){
System.out.println("arr[" + i + "] = " + arr[i]);
}
//4.定义变量记录数组中的最大最小值,以及累加和
int max = arr[0];
int min = arr[0];
int sum =0;
for(int i = 0; i < arr.length; i++){
if(arr[i] > max){
max = arr[i];
}
if(arr[i] < min){
min = arr[i];
}
sum += arr[i];
}
System.out.println("数组中的最大值为:" + max);
System.out.println("数组中的最小值为:" + min);
System.out.println("数组的累加和为:" + sum);
}
}
相关文章
- 暂无相关文章
用户点评