第六届全国信息技术应用水平大赛复赛试题 Java程序设计(A卷) 1. 迭代器(Iterator)提供了一种通用的方式来访问集合中的元素。编写一个程序把学生的成绩放在一个链表中,使用迭代器实现遍历链表并显示结果,具体显示结果如下所示。( 25 分) 姓名 学号 成绩 赵好名 9012 80.0 钱小青 9013 90.0 孙力枚 9014 78.0 周左右 9015 55.0 代码: import java.util.Iterator; import java.util.LinkedList; public class T1 { public static void main(String[] args) { LinkedList list = new LinkedList(); Student s1 = new Student("赵好民", "9012", 80.0); Student s2 = new Student("钱小青", "9013", 90.0); Student s3 = new Student("孙力枚", "9014", 78.0); Student s4 = new Student("周左右", "9015", 55.0); list.add(s1); list.add(s2); list.add(s3); list.add(s4); Iterator iter = list.iterator(); System.out.println("姓名 学号 成绩"); while (iter.hasNext()) { Student stu = iter.next(); System.out.println(stu.toString()); } } } class Student { private String name; private String sno; private double score; public Student(String name, String sno, double score) { this.name = name; this.sno = sno; this.score = score; } @Override public String toString() { return name + " " + sno + " " + score; } } 2. 素数又称为质数,它的定义是:只能被1 和被自己整除的整数(其中,1 不是素数)。编写程序打印出100 以内的所有素数。( 25 分) 代码: public class T2 { public static void main(String[] args) { StringBuffer sb = new StringBuffer(); for (int i = 2; i <= 100; i++) { boolean flag = true; for (int j = 2; j < i; j++) { if (i % j == 0) { flag = false; } } if (flag) { sb.append(i + " "); } } System.out.println(sb.toString()); } } 3. 编写使用继承Thread 类定义一个线程类,模拟左右手轮流写字,程序执行结果如下所示。( 25 分) 我是左手线程 我是左手线程 我是左手线程 我是左手线程 我是主线程 我是主线程 ...