第六届全国信息技术应用水平大赛Java组复赛A卷试题答案
1、 迭代器(Iterator)提供了一种通用的方式来访问集合中的元素。编写一个程序把学生的成绩存放在一个链表中,使用迭代器实现遍历链表并显示结果,具体显示结果如下所示。(25分)
姓名 学号 成绩
赵好民 9012 80.0
钱小青 9013 90.0
孙力枚 9014 78.0
周左右 9015 55.0
2、 素数又称为质数,它的定义是:只能被1和被自己整除的整数(其中,1不是素数)。编写程序打印出100以内的所有素数。(25分)
3、 编程使用继承Thread类定义一个线程类,模拟左右手轮流写字,程序执行结果如下所示。(25分)
我是左手线程
我是左手线程
我是左手线程
我是左手线程
我是主线程
我是主线程
我是右手线程
我是右手线程
我是右手线程
我是右手线程
我是主线程
4、 目录和文件是磁盘树形结构中最基本的组成单元,Java用File类来统一表示它们,并通过File类来完成目录和文件的创建、删除、查询等操作。手工创建d:\test文件夹,编写一个Java程序,遍历“d:\test”文件夹,如果文件夹为空,则创建一个新文件a.txt,并把此文件的名称打印出来;如果文件夹不为空,那么将该文件夹下的文件和目录遍历以后,按照目录和文件类型,分类把目录名称和文件名称打印出来。(25分)
附加题:
5、 用Socket编程实现客户和服务器交互的过程,包括一个服务器程序文件:TCPServerA.java和一个客户端程序文件:TCPClientA.java 。TCPServerA创建一个ServerSocket在端口4700监听客户请求,并把服务器端的时间发送到客户端,客户端接收服务器端传过来的时间,显示后结束。(25分)
6、 设计一个二维表格类TwoDimensional.java,其中包括能够反映二维表格特征的属性(表名、行头名、列头名、行数、列数、表框线型等)与操作行为,然后再设计一个测试类T6.java,检测二维表格类的使用情况。要求能够根据创建的二维表格对象属性画出二维表格。(25分)
package Six;
import java.util.Iterator;
import java.util.LinkedList;
public class A1 {
public static void main(String[] args) {
LinkedList<Stu> list = new LinkedList<Stu>();
list.add(new Stu("赵好民", 9012, 80.0));
list.add(new Stu("钱小青", 9013, 90.0));
list.add(new Stu("孙力枚", 9014, 78.0));
list.add(new Stu("周左右", 9015, 55.0));
System.out.println("姓名\t学号\t成绩");
Iterator<Stu> it = list.iterator();
while (it.hasNext()) {
System.out.println(it.next());
}
}
}
class Stu {
String name;
int number;
double score;
public Stu(String name, int number, double score) {
this.name = name;
this.number = number;
this.score = score;
}
public String toString() {
return name + "\t" + number + "\t" + score;
}
}
package Six;
public class A2 {
public static void main(String[] args) {
System.out.println("100以内的所有素数如下:");
sushu(100);
}
private static void sushu(int n) {
int num = 2;
while (num < n) {
boolean bool = true;
int sqrt = (int) Math.sqrt(num);
for (int j = 2; j <= sqrt; j++) {
if (num % j == 0) {
bool = false;
break;
}
}
if (bool)
System.out.print(num + " ");
num++;
}
}
}
package Six;
public class A3{
public static void main(String[]args) throws InterruptedException{
Left left=new Left();
Right right=new Right();
left.start();
left.join();
for(int i=0;i<3;i++){
if(i==2){
right.start();
right.join();
}
System.out.println("我是主线程");
}
}
}
class Left extends Thread{
public void run(){
for(int i=0;i<4;i++)
System.out.println("我是左手线程");
}
}
class Right extends Thread{
public void run(){
for(int i=0;i<4;i++)
System.out.println("我是右手线程");
}
}
package Six;
import java.io.File;
import java.io.IOException;
public class A4 {
public static void main(String[] args) throws IOException {
File file = new File("D:" + File.separator + "test");
File[] files = file.listFiles();
if (files.length != 0) {
showDir(files);
} else {
file = new File("D:" + file.separator + "test" + file.separator
+ "a.txt");
if (file.createNewFile()) {
System.out.println("成功创建文件a.txt");
files = file.getParentFile().listFiles();
showDir(files);
} else
System.out.println("文件a.txt创建失败");
}
}
public static void showDir(File[] files) {
System.out.println("目录如下:");
for (File f : files) {
if (f.isDirectory())
System.out.println(f.getName());
}
System.out.println("\n文件如下:");
for (File f : files) {
if (f.isFile())
System.out.println(f.getName());
}
}
}
package Six;
import java.io.IOException;
import java.io.InputStream;
import java.net.Socket;
import java.net.UnknownHostException;
public class TCPClient {
public static void main(String[] args) throws UnknownHostException,
IOException {
Socket client = new Socket("127.0.0.1", 4700);
System.out.println("成功连接服务正在获取服务器的时间...");
InputStream is = client.getInputStream();
byte b[] = new byte[1024];
while (is.read(b) != -1)
System.out.println("成功获取服务器时间" + new String(b));
}
}
package Six;
import java.io.IOException;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Date;
public class TCPServer {
public static void main(String[] args) throws IOException {
ServerSocket server = new ServerSocket(4700);
Socket socket = server.accept();
OutputStream fos = socket.getOutputStream();
String date = new Date().toLocaleString();
fos.write(date.getBytes());
fos.close();
}
}
public class SixthA6 {
public static void main(String[] args) {
TwoDimensional td = new TwoDimensional(2,2);
String rowName[] = {"用户","密码"};
String colName[] = {"张三","李四"};
String content[][] = {{"user1","12345"},{"user2","12345"}};
int shape = 1;
String tableName = "用户系统";
td.setColName(colName);
td.setContent(content);
td.setRowName(rowName);
td.setShape(shape);
td.setTableName(tableName);
td.drawTable();
}
}
class TwoDimensional {
private String tableName;
private String rowName[];
private String colName[];
private String content[][];
private int rowNum;
private int colNum;
private int shape;
public TwoDimensional(int rowNum, int colNum) {
this.rowNum = rowNum;
this.colNum = colNum;
rowName = new String[rowNum];
colName = new String[colNum];
content = new String[rowNum + 1][colNum + 1];
content[0][0] = "表格";
}
public String getTableName() {
return tableName;
}
public void setTableName(String tableName) {
this.tableName = tableName;
}
public String[] getRowName() {
return rowName;
}
public void setRowName(String[] rowName) {
this.rowName = rowName;
for (int i = 0; i < rowNum; i++)
this.content[i + 1][0] = rowName[i];
}
public String[] getColName() {
return colName;
}
public void setColName(String[] colName) {
this.colName = colName;
for (int i = 0; i < colNum; i++)
this.content[0][i + 1] = colName[i];
}
public String[][] getContent() {
return content;
}
public void setContent(String[][] content) {
for (int i = 0; i < rowNum; i++) {
for (int j = 0; j < colNum; j++) {
this.content[i + 1][j + 1] = content[i][j];
}
}
}
public int getShape() {
return shape;
}
public void setShape(int shape) {
this.shape = shape;
}
public void drawTable() {
if (shape == 1) {
System.out.println(tableName);
for (int i = 0; i <= rowNum; i++) {
for (int j = 0; j <= colNum; j++)
System.out.printf("%-8s",content[i][j]);
System.out.println();
}
}
}
}
第六届全国信息技术应用水平大赛Java组复赛A卷试题答案相关推荐
- 第六届全国信息技术应用水平大赛Java组复赛B卷试题答案
1. 九九乘法口诀表是学习算数乘法的基础,用一个for循环编程实现并显示九九乘法口诀表,程序运行显示结果如下所示.(25分) 1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 1 ...
- 第六届全国信息技术应用水平大赛比赛说明(电子系统设及团体比赛)(
一.比赛形式 1. 本项比赛为团体赛,参赛者以团队形式参加本次大赛,每个团队包括3名队员和1位指导教师. 2. 本项比赛内容为产品设计与制作,采用开放式.场外作业.提交作品与论文的方式进行.每队选手在 ...
- 第七届全国信息技术应用水平大赛预赛试题----C语言程序设计
第七届全国信息技术应用水平大赛预赛试题 C语言程序设计 一.单选题(60题,1分/题,共60分) [1].下列选项中,叙述不正确的是( ). [答 案]B [分 数]1分 [选 项] A.用ty ...
- 第七届全国信息技术应用水平大赛模拟题 JAVA程序设计
单选题(共60题,每题1分,共60分) 1. Java语言具有许多优点和特点,其中能反映Java程序在不同操作系统下都可以运行的特点是(). A.安全性 B.多线程 C.跨平台 D.可移植 2. Ja ...
- 高中信息技术奥赛试题c语言,全国信息技术应用水平大赛复赛试题 C语言程序设计(A卷)...
ITAT 第六届全国信息技术应用水平大赛复赛试题 C语言程序设计(A卷) 第六届全国信息技术应用水平大赛复赛试题 C语言程序设计(A卷) 请仔细阅读并严格遵守以下要求: 请创建以"准考证号_ ...
- 物流设计大赛优秀作品_重磅!312支高校战队入围!谁主第六届全国大学生物流设计大赛复赛...
中国物流与采购联合会培训部通知如下: 各有关院校: "马钢杯"第六届全国大学生物流设计大赛的初赛评审工作已经结束. 本届大赛共有580支参赛队取得参赛资格.大赛得到马钢集团的大力支 ...
- 第十六届全国大学生智能车竞赛创意组-讯飞智慧餐厅
竞赛正式文档可以在全国大学生智能车竞赛网站下载:https://smartcar.cdstm.cn 第十六届全国大学生智能车创意组包括有三个组别: 第十六届全国大学生智能汽车竞赛创意组-百度智慧交通 ...
- 第十五届全国大学生智能车人工智能创意组复赛首批团队名单
第十五届全国大学生智能车人工智能创意组复赛首批团队名单 第十五届全国大学生智能车人工智能创意组比赛第一阶段结束了.经过组委会审核.参赛团队申诉后.首批入围创意组复赛的85支团队名单公布如下: 序号 团 ...
- 第十六届全国大学生智能车竞赛竞速组-室内视觉组补充说明
一.背景 < 第十六届全国大学智能汽车竞赛竞速比赛规则 >已经在 竞赛网站 进行公布,其中包括了七个赛题组别.在往届比赛中,同学们应用NXP半导体公司出品的单片机设计车模作品控制器比较广泛 ...
最新文章
- 零起点学算法22——华氏摄氏温度转换
- java环境的意义_java环境变量配置的意义
- matlab导入txt生成曲面,求助:怎样将txt的数据导入到Matlab中并根据参数画出波形...
- ubuntu修改固定ip
- vb如何用代码对Excel的指定区域实行保护
- python学习(十八)爬虫中加入cookie
- unistd.h的close(0)导致std::cout被关闭
- Atitit 提升开发效率 mvc 框架 java 目录 第一节 Spark mvc Supt htdpl	1 第二节 jfinal 框架 Supt htdpl 不推荐	1 第三节 个人刚接
- 谈谈BFC与ie特有属性hasLayout
- javascript技术教程蔡敏_JavaScript基础与实践教程 (王萍萍,赵俊莉,孙强) pdf扫描版...
- 可以批量把Word文件转成JPG的软件工具
- macos系统镜像iso_Windows10操作系统iso镜像、微软正版软件下载站:MSDN,我告诉你...
- 安卓获取手机唯一码工具类
- 门级仿真经验(SDF反标及其工作原理)
- 【微信小程序】微信小程序获取当日以后的时间日期天数、星期
- 云应用程序服务器错误怎么办,“/”应用程序中的服务器错误解决方法
- java实现邮件发送_基于JavaMail的Java实现简单邮件发送功能
- 过程计算机控制综合课程设计,计算机控制技术综合课程设计.doc
- 计算机换用户无法启动软件吗,电脑软件无法启动常见的三种原因以及解决方法...
- Unity编辑器下红点树实现方案