华南农业大学Java程序设计(A卷)答案
华南农业大学期末考试试卷(A卷) 2011-2012学年第 1 学期 考试科目: Java程序设计 考试类型:(闭卷)考试 考试时间: 120 分钟 学号 姓名 年级专业 题号 一 二 三 总分 得分 评阅人 一、单项选择题(本大题共 25 小题,每小题 2 分,共 50 分) 1 2 3 4 5 6 7 8 D C C D A B B D 9 10 11 12 13 14 15 16 C D B C A A B B 17 18 19 20 21 22 23 24 25 D A A A B D D D A 1.5CM 二、程序阅读题(本大题共4小题,每小题5分,共20分) 评分细则:1题错误没有分,2,3,4题每答错一行扣一分 1. 答案: Hello 2. 答案: 110 110 110 110 110 3. 答案: Person() call Employee(String) Employee() Faculty() 4. 答案: this is Card! this is ICCard! Test ICCard! 1.5CM 三、编写程序题(本大题共3小题,每小题10分,共30分) 1. 编写程序输入两个整数,并输出这两个数的所有公约数。(10分) import java.util.*; +1 public class Test { +1 public static void main(String[] args) { +1 Scanner in = new Scanner(System.in); +1 int a,b,min; +1 a = in.nextInt(); b = in.nextInt(); min = (a>b)?b:a; +1 for(int i =1; i<= min; i++){ if(a%i ==0 +4 } } } 2. 编写程序读入10个单精度浮点型值,按照从小到大的顺序输出来。(10分) import java.util.*; +1 public class Test { +1 public static void main(String[] args) { +1 Scanner in = new Scanner(System.in); +1 float[] a = new float[10]; +1 for(int i =0; i< a.length; i++){ a[i] = in.nextFloat(); +2 } Arrays.sort(a); +2 该处有多种排序算法 for(int i =0; i< a.length; i++){ System.out.println(a[i]); } +1 } } 3. 考虑二维坐标系的点,定义一个描述点的类,命名为Point。(10分) public class Point { +1 private double x; +1 private double y; +1 public Point(){ x = 0.0; y = 0.0; } +1 public Point(double x1, double y1){ x = x1; y = y1; } +1 public double getX(){ return x;} public double getY(){ return y;} public void setX(double x1){ x=x1;} public void setY(double y1){ y=y1;} +1 public double distance(Point p){ double dis; dis = Math.sqrt((x-p.getX())*(x-p.getX())+(y-p.getY())*(y-p.getY())); return dis; } +2 public String toString(){ return “(“+x+“,“+y+“)“; } +2 }