2011 年 选拔赛 java 高职
考生须知:
考试时间为 4 小时。 本试卷包含两种题型: “代码填空”与“程序设计” 。总计 100 分。 其中代码填空:3+3+4+6+7+9+10 = 42 分 程序设计:14+17+27 = 58 分 填空题要求参赛选手在弄清给定代码工作原理的基础上填写缺失的部分, 使得程序逻辑 正确、完整。所填写的代码不超过一条语句 所填写的代码不超过一条语句(即不能出现分号) 。 所填写的代码不超过一条语句 把填空的答案 (仅填空处的答案, 不包括题面) 存入考生文件夹下对应题号的 “解答.txt” 中即可。 编程题要求选手设计的程序对于给定的输入能给出正确的输出结果。 考生的程序只有能 运行出正确结果的时候才有机会得分。注意:在评卷时使用的输入数据与
试卷中给出的实 运行出正确结果的时候才有机会得分 例数据可能是不同的。选手的程序必须是通用的 选手的程序必须是通用的,不能只对试卷中给定的数据有效。 选手的程序必须是通用的 对每个题目,要求考生把所有类写在一个文件中。调试好后,存入与考生文件夹下对应 题号的“解答.txt”中即可。相关的工程文件不要拷入。请不要使用 package 语句。 另外,源程序中只能出现 JDK1.5 中允许的语法或调用。不能使用 1.6 或更高版本。
1. 代码填空 (满分 3 分)
计算蔬菜总价 为了丰富群众菜篮子,平抑菜价,相关部分组织了蔬菜的调运。今某箱中有多个品种的 蔬菜。蔬菜的单价(元/公斤)存放在 price 数组中,蔬菜的重量(公斤)存放在 weight 数组 中。下面的代码计算该箱蔬菜的总价,试完善之。 把填空的答案 (仅填空处的答案, 不包括题面) 存入考生文件夹下对应题号的 “解答.txt” 中即可。
public static double getTotal(double[] price, double[] weight) { double x = 0; for(int i=0; i
2. 代码填空 (满分 3 分)
计算行程 低碳生活,有氧运动。骑自行车出行是个好主意。小明为自己的自行车装了个计数器, 可以计算出轮子转动的圈数。在一次骑车旅行中,出发时计算器的示数为 begin,到达目的 地时的示数为 end。下列代码计算了小明一共骑行了多远(单位:公里) 。其中 d 表示小明 自行车轮子的直径(单位:米) 。
第
1/12
页
把填空的答案 (仅填空处的答案, 不包括题面) 存入考生文件夹下对应题号的 “解答.txt” 中即可。
public static double getDistance(int begin, int end, double d) { return (end-begin) * Math.PI * d * d _________; }
3. 代码填空 (满分 4 分)
反转的串 解决同一个问题往往有许多方法。 小刚很喜欢别出心裁。 一天他在纸上草草写了一段程 序, 实现了把
串 s 中的内容反转后放入 s2 的功能。 也就是说, 最后的内容变成了 s2 “7654321” 。 可惜草纸出现了一处污损,请补全缺失的部分。把填空的答案(仅填空处的答案,不包 括题面)存入考生文件夹下对应题号的“解答.txt”中即可。
String s = "1234567"; String s2 = ""; for(int i=0; i 4. 代码填空(满分 6 分)
最近距离 已知平面上的若干点的位置,存入一个 List 中。现在需要计算所有这些点中,距离最 近的两个点间的最小距离。 请补全缺失的代码。把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下 对应题号的“解答.txt”中即可。
class MyPoint { private double x; // 横坐标 private double y; // 纵坐标
public MyPoint(double x, double y) { this.x = x; this.y = y; }
public static double distance(MyPoint p1, MyPoint p2) { double dx = p1.x - p2.x; double dy = p1.y - p2.y;
第
2/12
页
return Math.sqrt(dx*dx + dy*dy); }
/* lst 中含有若干个点的坐标 返回其中距离最小的点的距离 */ public static double getMinDistance(List lst) { double r = ________________; int n = lst.