第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx

上传人:b****4 文档编号:8289674 上传时间:2023-05-10 格式:DOCX 页数:12 大小:18.51KB
下载 相关 举报
第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx_第1页
第1页 / 共12页
第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx_第2页
第2页 / 共12页
第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx_第3页
第3页 / 共12页
第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx_第4页
第4页 / 共12页
第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx_第5页
第5页 / 共12页
第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx_第6页
第6页 / 共12页
第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx_第7页
第7页 / 共12页
第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx_第8页
第8页 / 共12页
第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx_第9页
第9页 / 共12页
第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx_第10页
第10页 / 共12页
第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx_第11页
第11页 / 共12页
第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx

《第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx(12页珍藏版)》请在冰点文库上搜索。

第七届信息技术应用大赛Java组复赛A卷原题答案Word格式文档下载.docx

刘志强"

91));

李云环"

72));

孙志华"

唐德凯"

84));

杜天"

82));

张属"

Studentstudent=newStudent("

王琳"

86);

Iterator<

it=list.iterator();

System.out.println("

新学生——"

+student.name+"

的托福成绩("

+student.score+"

)与下列学生"

);

while(it.hasNext()){

Studentstu=it.next();

if(stu.score==student.score){

System.out.println(stu.name+"

("

+stu.score+"

)"

}

的托福成绩相同"

classStudent{

Stringname;

//学生姓名

intscore;

//学生托福成绩

publicStudent(Stringname,intscore){

this.name=name;

this.score=score;

2、使用Java的应用编程接口,编写一个程序,实现显示当前日期和时间,并显示当月日历的效果。

在日历显示中,当前日期后加“*”突出,具体显示结果如下图所示:

3、假设有一数组,包含12个整数,已经按升序排好。

请编写一个程序,使其能从指定位置开始的n(0<

n<

12)个数按逆序重新排列并输出新的完整数组。

例如:

原数组为5,9,11,15,16,19,21,32,45,48,72,83,要求把从第5个数开始的4个数按逆

序重新排列,则得到的新数组为5,9,11,15,32,21,19,16,?

45,48,72,83。

publicclassT3{

publicstaticvoidmain(String[]args){

int[]array=newint[]{5,9,11,15,16,19,21,32,45,48,72,83};

原数组为"

for(inti=0;

i<

array.length;

i++)

System.out.print(array[i]+"

\t"

intstart=4;

//指定位置

intn=5;

//多少个数

for(inti=start-1;

start+n-1;

for(intj=i+1;

j<

j++){

if(array[i]<

array[j]){

inttemp=array[i];

array[i]=array[j];

array[j]=temp;

\n得到新数组为"

4、使用RandomAccessFile流,编程统计所给素材文件“NEWSPAPER.txt”中的英文单词出现的几种情况,具体要求如下:

(1)统计出现的单词个数;

(2)统计互不相同的单词数量;

(3)统计每个单词出现的频率,并将这些单词按频率从大到小的顺序显示在一个TextArea中(频率相同的单词显示顺序无要求)。

程序运行效果如下图所示:

importjava.awt.BorderLayout;

importjava.awt.event.ActionEvent;

importjava.awt.event.ActionListener;

importjava.io.File;

importjava.io.FileNotFoundException;

importjava.io.IOException;

importjava.io.RandomAccessFile;

importjava.util.ArrayList;

importjava.util.Collections;

importjava.util.Comparator;

importjava.util.HashMap;

importjava.util.List;

importjava.util.Map;

importjava.util.Set;

importjavax.swing.JButton;

importjavax.swing.JFrame;

importjavax.swing.JTextArea;

publicclassT4extendsJFrameimplementsActionListener{

Filefile=newFile("

NEWSPAPER.txt"

RandomAccessFileraf=null;

ArrayList<

String>

list=newArrayList<

HashMap<

String,Integer>

map=newHashMap<

Stringstr=null;

//读取的一行文本

Stringstrs[]=null;

//一行中单词数组

JButtonopen=newJButton("

OpenFile"

JTextAreainfo=newJTextArea("

"

publicT4(){

this.setSize(350,500);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

open.addActionListener(this);

this.setLocationRelativeTo(null);

this.add(open,BorderLayout.NORTH);

this.add(info,BorderLayout.CENTER);

newT4();

publicvoidactionPerformed(ActionEvente){

if(e.getSource()==open){

try{

raf=newRandomAccessFile(file,"

rw"

while((str=raf.readLine())!

=null){

strs=str.split("

\\W|\\d"

strs.length;

i++){

if(strs[i].length()>

0){

list.add(strs[i]);

if(map.containsKey(strs[i])){

intvalue=map.get(strs[i]);

map.put(strs[i],++value);

}else{

map.put(strs[i],1);

info.append(file.getPath()+"

文本中共有"

+list.size()+"

个英文单词"

info.append("

\n其中有"

+map.size()+"

个互不相同的单词"

Set<

Map.Entry<

>

set=map.entrySet();

Listlists=newArrayList(set);

Collections.sort(lists,

newComparator<

(){

publicintcompare(Map.Entry<

o1,

o2){

//List

returno2.getValue()-o1.getValue();

});

its=lists.iterator();

while(its.hasNext()){

entry=its.next();

Stringkey=entry.getKey();

Integercount=entry.getValue();

\n"

+key+"

:

+count+"

/"

+list.size()

+"

="

+(float)count/list.size());

}catch(FileNotFoundExceptionex){

ex.printStackTrace();

}catch(IOExceptionex){

5、用Socket编程实现客户端读取服务器端对象的交互过程,即客户端将服务器端的文本区(TextArea)对象读取到客户端,并添加到窗口中。

需要编程实现2个程序文件,一个是服务器端程序文件:

Server.java,另一个是客户端程序文件:

ClientA.java。

服务器端程序编译通过后,创建一个ServerSocket在端口4331监听客户请求,等待客户端呼叫,一旦接收到客户端请求,则启动一个新线程,输出一个文本区对象并发送到客户端,客户端接收服务器端传过来的文本区对象,并显示其内容。

【分数】20分

Client-->

importjava.awt.TextArea;

importjava.io.InputStream;

import.Socket;

publicclassClientAextendsJFrame{

TextAreainfo=newTextArea("

publicClientA(){

this.setSize(350,300);

client();

publicvoidclient(){

try{

Socketclient=newSocket("

127.0.0.1"

4331);

InputStreamis=client.getInputStream();

byte[]data=newbyte[1024];

while((is.read(data))!

=-1){

info.append(newString(data));

获取成功"

}catch(IOExceptione){

e.printStackTrace();

publicstaticvoidmain(String[]args){

newClientA();

Server-->

importjava.io.OutputStream;

import.ServerSocket;

publicclassServerextendsJFrame{

ServerSocketserver=null;

TextAreainfo=newTextArea("

等待客户端的请求并把此信息发送给对方"

publicServer(){

service();

publicvoidservice(){

server=newServerSocket(4331);

while(true){

newSent(server,server.accept(),info.getText()).start();

成功与客户端连接"

newServer();

classSentextendsThread{

ServerSocketsev;

Stringinfo;

Socketsocket;

publicSent(ServerSocketser,Socketsocket,Stringinfo){

this.sev=ser;

this.socket=socket;

this.info=info;

publicvoidrun(){

OutputStreamout=socket.getOutputStream();

out.write(info.getBytes());

}catch(IOExceptionex){

6、在Access2003中创建一个新数据库,名为员工库.mdb。

配置ODBC驱动源,连接到员工库上。

编写程序,使用JDBC-ODBC桥驱动程序,在Access数据库中创建员工表,并通过程序向表中插入如下数据。

表的结构和示例数据如下所示:

员工表:

使用Java语言编写程序,在员工库中创建员工表,插入上述3条记录,然后查询表数据并显示。

具体要求如下:

(1)使用JDBC-ODBC桥驱动程序;

(2)通过程序,在员工库中创建员工表,表结构如上所示;

(3)通过程序读取表结构信息并显示;

(4)使用PreparedStatement语句来插入3条记录;

(5)查询出表中所有记录,并按照主键升序显示。

参考提示代码:

Class.forName("

sun.jdbc.odbc.JdbcOdbcDriver"

Connectionconn=DriverManager.getConnection("

jdbc:

odbc:

employees"

"

importjava.sql.Connection;

importjava.sql.DriverManager;

importjava.sql.PreparedStatement;

importjava.sql.ResultSet;

importjava.sql.SQLException;

importjava.sql.Statement;

publicclassT6{

publicstaticConnectionconn;

publicstaticvoidmain(String[]args)throwsClassNotFoundException,

SQLException{

conn=DriverManager.getConnection("

createTable();

Stringsql="

insertintoemployeevalues(1001,'

Jerry'

'

jerry@'

3000,'

1982-05-18'

;

insert(sql);

sql="

insertintoemployeevalues(1002,'

Mike'

Mike@'

3400,'

1985-08-18'

insertintoemployeevalues(1003,'

John'

John@'

3200,'

1982-09-18'

select*fromemployeeorderbyemloyee_idasc"

query(sql);

publicstaticvoidcreateTable()throwsSQLException{

Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);

createtableemployee(emloyee_idIntegerprimarykey,namevarchar(10)notnull,emailvarchar(30),salaryInteger,dateDate)"

booleanresult=stmt.execute(sql);

if(result)

成功创建员工表"

else

创建员工表失败"

publicstaticvoidinsert(Stringsql)throwsSQLException{

PreparedStatementps=conn.prepareStatement(sql);

intresult=ps.executeUpdate();

if(result>

0)

插入数据成功"

publicstaticvoidquery(Stringsql)throwsSQLException{

Statementstmt=conn.createStatement();

ResultSetrs=stmt.executeQuery(sql);

员工号\t员工姓名\t员工邮箱\t员工工资\t员工生日"

while(rs.next()){

System.out.println(rs.getInt

(1)+"

+rs.getString

(2)+"

+rs.getString(3)+"

+rs.getInt(4)+"

+rs.getString(5));

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2