要求:编程题用电脑编写代码并将运行结果截图上传,其他题只写答案标清题号写在纸上,拍照上传。第2章 Java编程基础一、填空题1、Java中的程序代码都必须在一个类中定义,类使用______关键字来定义。2、布尔常量[1]即布尔类型的两个值,分别是______和______。3、Java中的注释可分为三种类型,分别是______、______、______。4、Java中的变量可分为两种数据类型[2],分别是______和______。5、在Java中,byte类型数据占______个字节,short类型数据占______个字节,int类型数据占_____个字节,long类型数据占_____个字节。6、在逻辑运算符中,运算符______和______用于表示逻辑与,______和______表示逻辑或。7、若x = 2,则表达式 ( x + + )/3 的值是______。8、若int a =2; a+=3;执行后,变量a的值为______。9、若int []a=(12,45,34,46,23); ,则a[2]= ______。10、若int a[3][2]=({123,345),(34,56),(34,56)},则a[2][1]= ______。二、判断题1、Java语言不区分大小写。2、0xC5表示的是一个十六进制[3]整数。3、continue 语句只用于循环语句中,它的作用是跳出循环。4、“/*…*/”中可以嵌套“/”注释,但不能嵌套“/*…*/”注释。5、-5%3的运算结果是2。三、选择题1、以下选项中,哪些属于合法的标识符[4]?(多选)A、Hello_World B、class C、123username D、username1232、关于方法重载的描述,以下选项中哪些是正确的?(多选)A、方法名必须一致 B、返回值类型必须不同C、参数个数必须一致 D、参数的个数或类型不一致3、以下关于变量的说法错误的是?A、变量名必须是一个有效的标识符B、变量在定义时可以没有初始值C、变量一旦被定义,在程序中的任何位置都可以被访问D、在程序中,可以将一个byte类型的值赋给一个int类型的变量,不需要特殊声明4、以下选项中,switch语句判断条件可以接收的数据类型有哪些? (多选)A、int B、byte C、char D、short5、假设int x = 2,三元表达式 x>0?x+1:5 的运行结果是以下哪一个?A、0 B、2 C、3 D、56、下面的运算符中,用于执行除法运算是哪个?A、/ B、 C、% D、*7、下列语句哪些属于循环语句?(多选)A、for语句 B、if语句 C、while语句 D、switch语句8、下面哪种写法可以实现访问数组arr的第1个元素?A、arr[0] B、arr(0) C、arr[1] D、arr(1)9、以下哪个选项可以正确创建一个长度为3的二维数组?A、 new int [2][3]; B、 new int[3][];C、 new int[][3]; D、 以上答案皆不对10、请先阅读下面的代码。int x = 1;int y = 2;if (x % 2 == 0) (y++;) else (y--;)Syst.m.out.println("y=" + y);上面一段程序运行结束时,变量y的值为下列哪一项?A、1 B、2 C、3 D、switch语句四、程序分析题阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果。否则请说明编译失败的原因。代码一:public class Test01 (public static void main(String[] args) {byte b = 3;b = b + 4;Syst.m.out.println("b=" + b);)}代码二:public class Test02 (public static void main(String[] args){int x = 12;{int y = 96;Syst.m.out.println("x is " + x);Syst.m.out.println("y is " + y);)y = x;Syst.m.out.println("x is " + x);}}代码三:public class Test03 (public static void main(String args[]) {int x = 4, j = 0;switch (x) {case 1:j++;case 2:j++;case 3:j++;case 4:j++;case 5:j++;default:j++;)Syst.m.out.println(j);}}代码四:public class Test04 (public static void main(String args[]) {int n = 9;while (n > 6) {Syst.m.out.println(n);n--;)}}五、简答题1、请列举Java语言中的八种基本数据类型,并说明每种数据类型所占用的空间大小。2、简述与的区别并举例说明。3、什么是方法重载?六、编程题请按照题目的要求编写程序并给出运行结果。请编写程序,实现计算“1+3+5+7+…+99”的值。提示:使用循环语句实现自然数1~99的遍历。在遍历过程中,通过条件判断当前遍历的数是否为奇数,如果是就累加,否则不加
t.
m.out.println("y=" + y);上面一段程序运行结束时,变量y的值为下列哪一项?A、1 B、2 C、3 D、switch语句四、程序分析题阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果。否则请说明编译失败的原因。代码一:public class Test01 {public static void main(String[] args) {byte b = 3;b = b + 4;Sys
t.
m.out.println("b=" + b);}}代码二:public class Test02 {public static void main(String[] args){int x = 12;{int y = 96;Sys
t.
m.out.println("x is " + x);Sys
t.
m.out.println("y is " + y);}y = x;Sys
t.
m.out.println("x is " + x);}}代码三:public class Test03 {public static void main(String args[]) {int x = 4, j = 0;switch (x) {case 1:j++;case 2:j++;case 3:j++;case 4:j++;case 5:j++;default:j++;}Sys
t.
m.out.println(j);}}代码四:public class Test04 {public static void main(String args[]) {int n = 9;while (n > 6) {Sys
t.
m.out.println(n);n--;}}}五、简答题1、请列举Java语言中的八种基本数据类型,并说明每种数据类型所占用的空间大小。2、简述与的区别并举例说明。3、什么是方法重载?六、编程题请按照题目的要求编写程序并给出运行结果。请编写程序,实现计算“1+3+5+7+…+99”的值。提示:使用循环语句实现自然数1~99的遍历。在遍历过程中,通过条件判断当前遍历的数是否为奇数,如果是就累加,否则不加
题目解答
答案
一、填空题
1、 class
2、 true和false
3、 单行注释、多行注释、文档注释
4、 基本数据类型、引用数据类型
5、 1、2、4、8
6、
7、 0
8、 5
9、 34
10、 56
二、判断题
1、 错 2、对 3、错 4、对 5、错
三、选择题
1、 AD 2、AD 3、C 4、ABCD 5、C 6 、A 7、AC 8、A 9、B 10、A
四、程序分析题
1、 编译不通过。int值4和b相加时,由于变量b的类型为byte,取值范围没有int类型大,存不下int类型的值,因此编译不通过。
2、 编译不通过。这是因为y是在最里层的代码块中定义的一个变量,只有在那个代码块中才可使用,在使用y = x;语句时已经超过了y变量的作用域[5],所以编译无法通过。
3、 打印结果为:3。
4、 打印结果为:
9
8
7
五、简答题
1、Java语言的八种基本数据类型有:byte字节型,占一个字节。short短整型,占两个字节。int整型,占4个字节。long长整型,占8个字节。float单精度浮点型,占4个字节。double双精度[6]浮点型,占8个字节。char字符型,占两个字节。boolean型,表示逻辑值,有true和false两个值,分别占一个字节。
2、如果使用“”在表达式之间进行连接,那么无论任何情况,“”两边的表达式都会参与计算。如果使用“”进行连接,当“”左边的表达式为false,则不会执行其右边的表达式。例如定义int x = 2,y = 0; boolean b = x 0表达是会发生被0除异常,因为x / y的表达式执行了。而boolean b = x 0是不会出现这种异常的,因为x < y为false,表达式x / y不会执行。
3、方法重载指的是在一个类中可以声明多个同名的方法,而方法中参数的个数或者数据类型不一致。调用这些同名的方法时,JVM会根据实际参数的不同绑定到不同的方法。
六、编程题
参考答案
public class Test01 {
public static void main(String[] args) {
int sum = 0;
for (int i = 1; i < 100; i++) {
if (i % 2 != 0)
sum += i;
}
System.out.println(sum);
}
}