第一章 Java语言概述
一、选择题
-
下面哪种类型的文件可以在Java虚拟机中运行?( A )
A. class
B. Java
C. jre
D. exe
-
如果JDK 的安装路径为“d:\jdk”,若想在命令窗口中任何当前路径下,都可以直接使用javac和java命令,需要将环境变量path设置为以下哪个选项?( B )
A. d: \jdk
B. d: \jdk\bin
C. d: \jre\bin
D. d:\jre
-
在JDK 目录中,Java 程序运行环境的根目录是( C )。
A. bin
B. demo
C. jre
D. lib
-
JDK 安装后,在安装路径下有若干子目录,其中包含Java 开发包中开发工具的是( A )目录。
A. \bin
B. \demo
C. \include
D. \jre
-
对于可以独立运行的Java 应用程序,下列( D )说法是正确的。
A.无须main方法
B.必须有两个main方法
C.可以有多个或零个main方法
D. 必须有一个main方法
-
Java源文件和编译后的文件扩展名分别是( B )。
A. class和java
B. java和class
C. class和class
D.java和java
-
作为Java应用程序入口的main()方法,其声明格式可以是( C )。
A. public static int main( String[ ] args)
B. public void main( String[ ] args)
C. public static void main( String[ ] args )
D. public int main( String[ ] args)
-
在Eclipse中,( A )视图显示输出的结果。
A.控制台
B.导航器
C.包资源管理器
D. 大纲
-
下面说法正确的是( D )。
A. Java程序的main( )方法写在类的外部
B.一个Java程序里可以有一到多个 main( )方法
C.如果Java程序中的main( )方法中只有一条语句,则不需要用{ }括起来
D. Java程序中,如果类名由public修饰,则类名必须与文件名保持一致 -
在控制台运行一个名为Test的Java程序,使用的正确命令是( B )。
A. java Test. Java
B. java Test
C. javac Test. Java
D. javac Test
二、填空题
- 建立Java开发环境,安装JDK, 一般需要设置环境变量 path 、 classpath 。
- 开发和运行Java程序需要经过的三个主要步骤为 编辑 、 编译 和 运行 。
- 编写一个Java 源程序,编译该源程序的命令为 javac ,运行该程序的命令为 java 。
- Java应用程序中有一个main( )方法,它前面有三个修饰符是 public 、 static 、 void 。
- 缩写的JDK代表 Java开发工具 ,JRE 代表 Java运行环境 。
第二章 数据类型
一、 选择题
-
下面哪一项在Java中是非法的标识符?( C )
A. $ user
B. point
C. You&me
D. _endline
-
下列不属于Java保留字的是( A ) 。
A. sizeof
B. super
C. abstract
D. break
-
下列整型数据类型中,需要内存空间最少的是( D ) 。
A. short
B. long
C. int
D. byte
-
哪个是将一个十六进制值赋值给一个long型变量? ( D )
A. long number = 345L;
B. long number = 0345;
C. long number = 0345L;
D. long number = 0x345L;
-
char类型的取值范围是( B )。
A.2-7~27
B.0~216-1
C.-215~215
D.0~28-1
-
在Java中, 表示换页符的转义字符是( B )
A. \ n
B. \ f
C. ‘f’
D. \ dd
-
若定义有变量float a, b=6.5F,则下列说法正确的是( B )。
A.变量a, b均被初始化为6.5
B.变量a没有被初始化,b被初始化为6.5
C.变量a, b均未被初始化
D.变量b没有被初始化,a被初始化为6.5
-
下列关于boolean类型的叙述中,正确的是( D )
A.可以将boolean类型的数值转换为int 类型的数值
B.可以将boolean类型的数值转换为字符串
C.可以将boolean类型的数值转换为char类型的数值
D.不能将boolean类型的数值转换为其他基本数据类型
-
下列选项中属于字符串常量的是( B )。
A. ‘abc’
B. “abc”
C. abc
D. (abc)
-
创建了Scanner对象scan, 以下能正确获取输人数据的是( C )。
A. int s= scan. nextFloat( ) ;
B. float s= scan. nextDouble( ) ;
C. float s= scan. nextInt( ) ;
D. String s=scan. nextInt( );
-
以下( A )是合法的变量名。
A. de2 $_
B. df-5
C. long
D.3x
-
以下能够实现正确输出的是( C )。
A. System. out. println( Hello world!);
B. System. Out. println(“Hello world!");
C. System. out. println(“Hello world!");
D. system. out. println( “Hello world!");
二、填空题
-
Java中的分隔符有 注释符 、 空白符 和 普通分隔符 三种。
-
布尔型常量只有两个值: true 和 false ,表示“真”和“假”。
-
单行注释以 // 开始,表示注释一行。多行注释以 / 开始,到 / 结束,中间可写一到多行。
-
Java中的数据类型分为两种,分别是 基本数据类型 和 引用数据类型 。
-
在Java中,byte类型数据占 1 字节,short 类型数据占 2 字节,int类型数据
4 字节,long 类型数据占 8 字节。
- 要输出" \ “,输出语句为 System. out. println(“\”); 。
三、操作题
- 输出会员管理菜单。菜单项有: 1. 显示会员信息; 2. 添加会员信息; 3. 修改会员信息; 4. 查询会员信息。
public class P41_1 {
public static void main(String[] args) {
Menu();
}
public static void Menu() {
System.out.println("会员管理菜单:");
System.out.println("1. 显示会员信息");
System.out.println("2. 添加会员信息");
System.out.println("3. 修改会员信息");
System.out.println("4. 查询会员信息");
System.out.print("请选择操作(输入数字1-4):");
}
}
- 编写一个Java程序,要求从键盘输入个人信息,并显示出来。个人信息包括:姓名、年龄、性别、身高、体重、住址、电话。
import java.util.Scanner;
public class P41_2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入您的姓名:");
String name = scanner.nextLine();
System.out.print("请输入您的年龄:");
int age = scanner.nextInt();
scanner.nextLine(); // 消耗掉输入年龄后的换行符
System.out.print("请输入您的性别(男/女):");
String gender = scanner.nextLine();
System.out.print("请输入您的身高(厘米):");
double height = scanner.nextDouble();
scanner.nextLine(); // 消耗掉输入身高后的换行符
System.out.print("请输入您的体重(千克):");
double weight = scanner.nextDouble();
scanner.nextLine(); // 消耗掉输入体重后的换行符
System.out.print("请输入您的住址:");
String address = scanner.nextLine();
System.out.print("请输入您的电话:");
String phone = scanner.nextLine();
System.out.println("您输入的信息如下:");
System.out.println("姓名:" + name + " 年龄:" + age + " 性别:" + gender + " 身高:" + height + "厘米" + " 体重:" + weight + "千克" + " 住址:" + address + " 电话:" + phone);
}
}
第三章 运算符
一、选择
-
若有定义int a=1, b=2;那么表达式(a++)+(++b)的值是( B )。
A.3
B.4
C.5
D.6
-
假定有变量定义: int k=7, x=12;那么能使值为3的表达式是( D )。
A. x%=(k%=5)
B. x%=(k-k%5)
C. x%=k-k%5
D. (x%=k)-(k%=5)
-
设x=1,y=2,z= 3,则表达式y+=z–/++x的值是( A )。
A. 3
B. 3.5
C. 4
D. 5
-
下列哪个赋值语句是正确的? ( D )
A. char a= ‘12’;
B. int a= 12.0;
C. int a=12. 0f;
D. int a=(int)12.0;
-
下列选项中,Java 语句错误的是( A )。
A. float a=3. 0;
B. double a=3.5;
C. char a= 20;
D. byte= 15;
-
下列代码的执行结果是( D )。
Public class Test{
Public static void main (String args[ ]){
System. out. println(5/2);
}
}
A.2.5
B.2.0
C.2.50
D.2
-
执行下列程序段后,b,x,y的值正确的是( A )。
int x=6,y=8; boolean b; b=x<y ||++x==--y;
A. true,6,8;
B. false,7,7
C. true,7, 7
D. false,6,8
-
下面表达式的值分别是( C )
(1)8/3 (2)8%3 (3)8.0/3
A. 2.666667 2 2.666667
B. 2 2 2
C. 2 2 2.666667
D. 2.6666672 2 2
-
定义整型变量int n=456,表达式的值为5的是( B )。
A. n/10/10
B. (n-n/100 * 100)/10
C. n%10
D. n/10
-
下列语句中,( D )正确完成了整型变量的声明和赋值。
A.int a, a=0
B. a=0;
C. int a=5. 6
D. int a1=0, a2=1
-
以下为boolean类型变量赋值的正确方式是( B )
A. boolean a=”true”
B. boolean a=(9>10)
C. boolean a=1
D. boolean a="真”
-
分析下面代码,正确的选项是( A )
double a=9; a++; int b=a/2;
A. 编译错误
B. 4.5
C. 4
D. 5
二、填空题
-
设x=2,则表达式(x++)/3的值是 0 。
-
如果要得到表达式20/3的浮点结果,表达式应改为 20.0/3.0 。
-
Java中的显式类型转换是 强制类型转换 ,隐式类型转换是 低类型转换向高类型 。
-
设a为double 类型变量,b为char类型变量,c为long类型变量,则表达式b+a/c的值为 double 类型。
-
设int x=16, y=5,则x/y的值为 3 ,x%y的值为 1 。
-
表达式(10+2*6)/4%3的值是 2 。
三、操作题
-
将给定小写字母转换成大写字母。
public class P53_1 { public static void main(String[] args) { String str = "hello, world!"; String changStr = chang(str); System.out.println(changStr); // 输出: HELLO, WORLD! } public static String chang(String input) { char[] chars = input.toCharArray(); for (int i = 0; i < chars.length; i++) { char c = chars[i]; // 如果字符是小写字母(ASCII码在97-122之间) if (c >= 'a' && c <= 'z') { // 转换为大写字母(ASCII码减去32) chars[i] = (char) (c - ('a' - 'A')); } } return new String(chars); } }
-
将给定的华氏温度转换成摄氏温度。转换公式为:摄氏度=5*(华氏度-32)/9。
public class P53_2 { public static void main(String[] args) { double fahrenheit = 98.6; // 给定的华氏温度 double celsius = fahrenheitToCelsius(fahrenheit); // 转换为摄氏温度 // 打印结果 System.out.println(fahrenheit + "°F 对应的摄氏温度是 " + celsius + "°C"); } // 转换函数:将华氏温度转换为摄氏温度 public static double fahrenheitToCelsius(double fahrenheit) { return 5 * (fahrenheit - 32) / 9; } }
-
任意给定一个三位数,请输出该数的个位、十位和百位数。
public class P53_3 { public static void main(String[] args) { int number = 123; int hundreds = number / 100; int tens = (number % 100) / 10; int ones = number % 10; System.out.println("百位数: " + hundreds); System.out.println("十位数: " + tens); System.out.println("个位数: " + ones); } }
第四章 控制语句
一、 选择题
- Java中关于if选择结构描述错误的是( C )。
A. if选择结构是根据条件判断之后再做处理的一种语法结构
B.关键字if后小括号里必须是一个条件表达式,表达式的值必须为布尔类型
C. if后小括号里表达式的值为false时,程序需要执行大括号里的语句
D. if语句可以和else 一起使用
- 下面哪些Java语句会导致无限循环? ( B )
(1)while (true) i = 0;
(2)while (false) i = 1;
(3)while (! false) i = 0;
A.仅仅(3)
B. (1)和(3)
C.仅仅(1)
D.(1)、(2)和(3)
-
下列关于多重if选择结构的说法正确的是( B )。
A.多个else if块之间的顺序可以改变,改变之后对程序的执行结果没有影响
B.多个else if块之间的顺序可以改变,改变之后可能对程序的执行结果有影响
C.多个else if块之间的顺序不可以改变,改变后程序编译不通过
D.多个else if块之间的顺序不可以改变,改变后程序编译可以通过
-
下列语句序列执行后,k的值是( D)。
int x=3,y=5,k=0; switch(x%y+3) { case 0 : k=x*y; break; case 6 : k=x/y; break; case 12 : k=x-y; break; default : k=x*y-x; break; }
A.12
B.-2
C.15
D.0
-
下列语句序列执行后,i的值是( A )
int i=0; do { i+=3;} while(i<10);
A.12
B.9
C.6
D.3
-
一个循环一般应包括哪几部分内容(A)?
A.以下答案都包括
B.循环体部分
C.初始化部分
D.迭代部分和终止部分
-
若a的值为3,下列程序段被执行后,c的值是©。
int c=1; if (a>0) if(a>3) c=2; else c=3; else c=4;
A.1
B.2
C.3
D.4
-
以下程序段的输出结果为©
int j=2; switch(j){ case 2 : System. out. print ("two. "); case 2+1 : System. out. println ("three. "); break; default : System. out. println ("value is "+j);