java去年试题、答案、及讲解

上传人:第*** 文档编号:34056420 上传时间:2018-02-20 格式:DOC 页数:13 大小:164.43KB
返回 下载 相关 举报
java去年试题、答案、及讲解_第1页
第1页 / 共13页
java去年试题、答案、及讲解_第2页
第2页 / 共13页
java去年试题、答案、及讲解_第3页
第3页 / 共13页
java去年试题、答案、及讲解_第4页
第4页 / 共13页
java去年试题、答案、及讲解_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《java去年试题、答案、及讲解》由会员分享,可在线阅读,更多相关《java去年试题、答案、及讲解(13页珍藏版)》请在金锄头文库上搜索。

1、一、 单项选择题(A)1、下列自然语言中哪句没有歧义?A、他说的确实在理 B、我买的那只灯泡早就报销了C、院子里有许多孩子种的花 D、学校领导对他的批评是有充分思想准备的(C )2、下列哪个不能作为 java 中的标识符?A、_this B、speed$upC、 user% D、number5答:java 中的标识符可以包含字母、数字、$、_ 其中数字不能开头(D)3、下列哪个式子用 java 浮点运算表示后,相等关系不成立?A、0.1*5 =0.5 B、0.75-0.5=0.25C、 1.0/8=0.125 D、0.1+0.1+0.1=0.3答:0.1+0.1+0.1 的计算结果用 doub

2、le 接收是 0.3000004(B)4、下面那个语句不能正确地声明一个整型的二维数组?A、int a = new int1212; B、int b1212 = new intC、 int c = new int12 D、int d = new int12答:定义二维数组,new 关键字后的前边一个括号中必须指定数组的大小(C )5、在 Java 中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不同,传回的值也可以不相同,这种特征性为:A、隐藏 B、覆盖 C、重载 D、封装答:返回值不同,参数不同,相同的方法名是方法的重载(A)6、假设有如下的代码Public stat

3、ic void main(String args)int x = 1,2,3,4; char y = a,b,c,d;for (int i = 0;i 0; j-)if (i + j) % 2) = 0)System.out.println(xi);elseSystem.out.println(yj);A、d1bd3b B、d12cd34c C、d1b1d3b D、2c24c4答:x.length = 4, y.length = 4外层 for 循环是 for(int i=0;i0;j-) j 的取值可以是 3,2,1,0循环之后判断(i + j) % 2) = 0 即可得出结果.(D)7、已

4、知如下代码1:class MyClass2: void myMethod(int i) System.out.println(“int version”);3: void myMethod(String s) System.out.println(“String version”)4: public static void main(String args)5: MyClass obj = new MyClass();6: char ch = c;7: obj.myMethod(ch);8: 9: A、 因为没有函数 myMethod 可以接受 char 类型的参数,第 7 行运行时会出错B、

5、 第 7 行编译会出错C、 程序正常运行,输出:String versionD、 程序正常运行,输出:int version答:char 类型会自动转型为 int 类型,所以调用 myMethod(int i) System.out.println(“int version”);方法,所以答案选 D(C )8、给出下列代码Public class StudentStatic int att = new int10;public static void main(String args)System.out.println(att1);下列哪个说法是正确的:A、编译时将产生错误; B、编译时正确

6、,运行时将产生错误C、输出零; D、输出空答:int 类型默认值为 0,初始化长度为 10 的 int 数组,此时数组中所有数字默认值都为 0(B)9、给出下列程序Public class ExampleString str = new String(“java”);Char ch = a,b,c;public static void main(String args)Example ex = new Example();ex.change(ex.str,ex.ch);System.out.println(ex.str + “ and ”);System.out.println(ex.ch);

7、public void change(String str,char ch)str = “lava”;ch0 = x;指出运行的结果:A、java and abc B、java and xbcC、 lava and abc D、lava and xbc答:String 字符串,一旦复制不会再改变,char 型可以改变,所以是 B(C )10、如下的代码片段,请问会输出多少行结果for (int i = 1; i = 0; i = i + i)System.out.println(i);A、死循环,会输出无穷多行 B、2 30 1C、 31 D、2 31 1答:输出的结果分别是 1,2,4,8,

8、16,321073741824.一直到 int 类型的取值范围 231 1,问题是输出了多少行结果,那么 1=20, 1=211073741824=231 1 所以结果是 31(C )11、下列代码编译执行会出现什么结果public class Helloprivate String s;public void Hello()s = “hello”;Public String toString()return s;Public static void main(String args)Hello x = new Hello();System.out.println(x); A、编译运行正常,输

9、出”hello”B、编译错误,因为没有定义构造函数C、编译通过,运行无任何输出D、编译通过,运行异常。因为 s 未被初始化答:这题 s 没有初始化,但是 String 默认值为 null,所以打印出的结果是 null(B)12、已知如下代码Boolean m = true;if (m = false)System.out.println(“true”);elseSystem.out.println(“False”);执行的结果是什么:A、True B、FalseC、无运行结果 D、会出现运行错误答:boolean 类型的 m 初始为 true,判断 true = false 不相等,所以输出

10、false(B)13、有下列代码片段,请问 g(3122013)会返回什么?public staic int g(int n)if(n % 2 = 0)return n/10;return g(g(n/10); A、3122013 B、31 c、312 D、死循环答:递归调用,一层层套,一层层 return 出来.具体几层.(A)14 、下列代码会输出什么内容?int x = 2, 5 , 8;int y = 2 , 5 , 8;System.out.println(x = y);A、false B、没有输出 C、true D、不一定答:两个不是数组实际的内存地址值不同。(B)15、有如下的函

11、数代码public static int f(int a, int b, int c)if(a b) & (c b)return b;if(a b) & (b c)return c;if(a = b) | (b = c) | (a = c)return 0;实际上该代码是无法通过编译的,对于其原因正确的说法是A、 不能再 if 条件语句中出现关键字 retrunB、 编译器认为有可能会执行到函数尾却没有返回任何内容C、 一个函数中不能有多个返回值D、 如果在函数中出现用 if 语句包含的 return,则必须要有对应的 else 语句答:编译器认为可能有情况没考虑到,所以必须要给出一个返回.二

12、、填空题1、已知 X、Y、Z 的取值依次为 3、4、5,写出执行下面的运算后 X、Y 、Z的取值:X += -Y * Z+X_18_ Y_3_ Z_6_2、下列的 java 表达式,其计算结果(保留小数点后两位有效数字)分别是(0.2 * ( (10+1) / 4) ) _0.40_ (0.2 * (10+1) / 4) _0.55_(0.2 * 10+1 / 4) _2.00_( (0.2 * 10+1) / 4 ) _0.75_3、请给出这个表达式的结果:!(!false & true ) | false _false_4、翻硬币:现有 4 个硬币正面朝上摞在一起,第一次翻转最上面的一个,

13、第二次把最上面的两个同时一起翻转,第三次把最上面的三个硬币一起翻转,.,如此继续下去,第 m 次最上面 m%4 个硬币一起翻转。当这 4 个硬币又恢复到全部正面朝上时,一共翻转次数为_11_答:程序题中的,运行出来5、组合数学问题:把标号为(A,B,C,D)的 4 个球放到 2 个无区别的盒子里, 要求每个盒子里至少有一个小球,问不同的方法共有多少种:_12_答:根据排列组合计算6、将下列数按照要求进行进制转换,假设这里的字长为 8bit(二进制采用 2补码表示,如不够 8 为请补齐前导的 0,每 4 位用一个空白分隔):将二进制 10110110 转化为十进制表示结果为:_182_将 0xD

14、5 从十六进制转换到 8 位表示的二进制结果为:_11010101_将十进制数-45 转换成 8 位二进制数结果为:_010011_计算 0xD5+(-45)的结果用二进制表示为:_10101000_上述 0xD5+(-45q)的结果用十进制表示为: _168_三、程序理解与调试1、读下列程序填空邮政快递包裹服务邮寄一个包裹的收费方式是:小于两斤收 10 元,超过两斤的部分每斤 3.75 元,不足一斤的部分按 1 斤收费。如果包裹的重量超过 70 斤,则收取额外的 10 元超重费。不接收超过 100 斤的包裹,要求接收包裹的重量(单位为斤) ,根据重量计算出邮寄包裹的费用。import jav

15、a util.*;public class PostPricepublic static void main(String args)double z;/邮件重量int h;/邮件计费重量double fPrice;/费用String info;/输出信息Scanner keyboard = new Scanner(System.in);/提示用户以输入邮寄的邮件重量z = keyboard.nextDouble();h = (int)z; /邮局计费都是按照整数进行的/计算邮寄费/不足一斤按一斤算if( h z =10 & N = 25)/这题我感觉有点问题,当这里判断了n=25 时候,下边的判断 n=30 永远不会执行了s = t + s;else if(N =30)s = s + s;elses = t + t;if

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号