itatjava第三第五复赛答案Word文件下载.docx

上传人:b****5 文档编号:21645364 上传时间:2023-01-31 格式:DOCX 页数:17 大小:62.50KB
下载 相关 举报
itatjava第三第五复赛答案Word文件下载.docx_第1页
第1页 / 共17页
itatjava第三第五复赛答案Word文件下载.docx_第2页
第2页 / 共17页
itatjava第三第五复赛答案Word文件下载.docx_第3页
第3页 / 共17页
itatjava第三第五复赛答案Word文件下载.docx_第4页
第4页 / 共17页
itatjava第三第五复赛答案Word文件下载.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

itatjava第三第五复赛答案Word文件下载.docx

《itatjava第三第五复赛答案Word文件下载.docx》由会员分享,可在线阅读,更多相关《itatjava第三第五复赛答案Word文件下载.docx(17页珍藏版)》请在冰豆网上搜索。

itatjava第三第五复赛答案Word文件下载.docx

))。

Strings。

while((s=in.readLine())!

=null){

System.out.println(s)。

读取文件本身的类Ex1.java的源代码如下:

****************************************************************

importjava.io.File。

/**

*@authorGodwin

*@version2010-05-16

*/

publicclassEx1{

publicstaticvoidmain(String[]args)throwsException{

BufferedReaderbr=newBufferedReader(newFileReader(newFile(System

.getProperty("

user.dir"

+File.separator+"

Ex1.java"

)))。

Strings。

while((s=br.readLine())!

System.out.println(s)。

***************************************

3、编写一个Java应用程序,利用RandomAccessFile类,把几个int型整数(1,2,3,4,5,6,7,8,9,10)写入到一个名字为tom.dat文件中,然后按相反顺序读出这些数据并显示在屏幕上。

(注意,一个int型数据占4个字节)(本题30分)

packageitat。

importjava.io.RandomAccessFile。

publicclassqq{

publicstaticvoidmain(String[]args)throwsException{

Stringdirectory="

D:

/test123"

Stringname="

tom.dat"

Filef=newFile(directory,name)。

RandomAccessFilefile=null。

file=newRandomAccessFile(f,"

rw"

)。

inta[]={1,2,3,4,5,6,7,8,9,10}。

file.writeInt(a[i])。

RandomAccessFilefile1=newRandomAccessFile(f,"

intj=file1.readInt()。

System.out.println(j)。

4、编写一个JavaGUI应用程序,采用Java多线程技术,模拟自由落体和平抛运动:

一个球自由落下,一个球水平抛出。

(本题30分)

(自由落体物理公式:

h=g*t2/2;

平抛运动物理公式:

h=g*t2/2,x=26*t;

h代表高度,t代表时间,g代表重力加速度=9.8m/s2)

附加题:

5、编写一个Java应用程序,实现如下功能:

1)判断两个字符串是否相同,s1=”youareastudent”,s2=”howareyou”;

2)判断字符串”22030219851022024”的前缀、后缀是否和某个字符串”220302”相同;

3)按字典顺序比较两个字符串”你”和”我”的大小关系;

4)将数字型字符串”100”和”123.678”转换为数字;

5)将字符串”FEDCBA”存放到数组中,调用for循环读出数组数据显示在屏幕上。

publicclassaa{

publicstaticvoidmain(Stringags[]){

Strings1="

youareastudent"

s2="

howareyou"

if(s1.equals(s2)){

System.out.println("

s1和s2相同。

}else{

s1和s2不同。

Strings3="

22030219851022024"

Strings4="

220302"

if(s3.startsWith(s4))

{

System.out.println(s3+"

的前缀为"

+s4)。

}else

的前缀不为"

if(s3.endsWith(s4))

的后缀为"

的后缀不为"

Strings5="

你"

Strings6="

我"

if(pareTo(s6)<

0)

\"

+s5+"

比\"

+s6+"

大"

}elseif(pareTo(s6)==0){

和\"

等"

小"

Strings7="

100"

Strings8="

123.678"

intnum1=Integer.parseInt(s7)。

Doublenum2=Double.parseDouble(s8)。

System.out.println(num1)。

System.out.println(num2)。

Strings9="

FEDCBA"

chars99[]=newchar[6]。

for(inti=0。

i<

s99.length。

i++){

s99[i]=s9.charAt(i)。

System.out.println(s99[i])。

Strings92="

char[]arr=s92.toCharArray()。

arr.length。

System.out.println(arr[i])。

6、编写客户/服务器程序,客户端Client.java使用DatagramSocket对象将数据包发送到服务器,请求获取服务器端的图像(考生可自选图像文件)。

服务器端Server.java将图像文件包装成数据包,并使用DatagramSocket对象将该数据包发送到客户端。

首先将服务器端的程序编译通过,并运行起来,等待客户的请求。

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

客户端

服务器端

服务端代码:

packagedatasocket。

importjava.io.*。

import.*。

publicclassFortuneServer1extendsThread{

DatagramSocketServerSocket。

publicFortuneServer1(){

super("

FortuneServer1"

try{

ServerSocket=newDatagramSocket(1121)。

FortuneServerupandrunning..."

}catch(SocketExceptione){

System.err.println("

Exception:

couldn'

tcreatedatagramsocket"

System.exit

(1)。

publicvoidrun(){

if(ServerSocket==null)

return。

while(true){

InetAddressaddress。

intport。

DatagramPacketpacket。

byte[]data=newbyte[16000]。

packet=newDatagramPacket(data,data.length)。

ServerSocket.receive(packet)。

address=packet.getAddress()。

port=packet.getPort()。

FileinFile=newFile("

/q1.jpg"

FileInputStreaminStream=newFileInputStream(inFile)。

if(inStream.read(data)<

=0){

System.err.println("

Error:

treadfortunes"

}

packet=newDatagramPacket(data,data.length,address,port)。

ServerSocket.send(packet)。

}catch(Exceptione){

System.err.println("

"

+e)。

e.printStackTrace()。

publicstaticvoidmain(String[]args){

FortuneServer1server=newFortuneServer1()。

server.start()。

客户端代码:

importjava.awt.Image。

importjava.awt.Toolkit。

importjava.awt.event.ActionEvent。

importjava.awt.event.ActionListener。

importjava.awt.event.WindowAdapter。

importjava.awt.event.WindowEvent。

importjavax.swing.ImageIcon。

importjavax.swing.JButton。

importjavax.swing.JFrame。

importjavax.swing.JLabel。

publicclassFortuneClientextendsJFrameimplementsActionListener{

*

privatestaticfinallongserialVersionUID=2567338201545440156L。

Imageimage=null。

privateJButtonbutton=newJButton("

获取图像"

privateJLabellabel=newJLabel()。

publicFortuneClient(){

this.setTitle("

Iamaclient"

this.setSize(500,500)。

this.setLocationRelativeTo(null)。

this.addWindowListener(newWindowAdapter(){

publicvoidwindowClosing(WindowEvente){

System.exit(0)。

})。

this.add(button,"

North"

button.addActionListener(this)。

this.setVisible(true)。

publicvoidgetMessage(){

DatagramSocketsocket。

DatagramPacketpacket。

socket=newDatagramSocket()。

packet=newDatagramPacket(data,data.length,InetAddress

.getByName("

127.0.0.1"

),1121)。

socket.send(packet)。

packet=newDatagramPacket(data,data.length)。

socket.receive(packet)。

image=Toolkit.getDefaultToolkit().createImage(packet.getData(),

0,packet.getData().length)。

socket.close()。

}catch(UnknownHostExceptione){

hostcouldnotbefound"

}catch(Exceptione){

e.printStackTrace()。

label=newJLabel(newImageIcon(image))。

publicstaticvoidmain(Stringargs[]){

newFortuneClient()。

publicvoidactionPerformed(ActionEvente){

//TODOAuto-generatedmethodstub

getMessage()。

this.add(label)。

label.setVisible(true)。

1、某人有5张3分和4张5分的邮票,请编写一个程序,

计算由这些邮票中的1张或若干张可以得到多少种不同的邮资,

并按照邮资从小到大顺序显示。

(20分)

2、采用Java多线程技术编写程序,其中包括两个线程:

A和B,其中A线程准备休眠一小时,B线程每隔一秒输入3句“起床”后,

吵醒休眠的线程A。

(25分)

3、利用Java的GUI编程,编写一个窗体,

包含两个文本框和一个命令按钮。

其中一个文本框接收用户输入的一行字符串,

回车后在另一个文本框中重复输出三行,单击命令按钮可清空两个文本框的所有内容。

4、编写一个Java应用程序,运行后,首先列出当前工作目录,

然后把当前目录下面的所有后缀为java的文件取出

(设置一个过滤器进行文件名后缀的过滤)。

(30分)

5、使用堆栈结构输出,其中=2+2,=3,=8。

(20分)

6、访问Access2003数据库,在Access数据库中创建学生表(T_Student)表并配置ODBC驱动源,

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

T_Student表:

字段名称说明数据类型约束备注

S_ID学号Integer主键

S_Name姓名Varchar(10)不允许空

S_Email邮箱Varchar(30)

S_Score英语成绩Integer

表数据示例:

S_IDS_NameS_EmailS_Score

1001JerryJerry@80

1002MikeMike@90

1003JohnJohn@78

使用Java语言编写程序,要求如下:

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

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

参考提示代码:

Class.forName("

sun.jdbc.odbc.JdbcOdbcDriver"

Connectionconn=DriverManager.getConnection("

jdbc:

odbc:

student"

"

mportjava.util.*。

publicclassT1{

publicstaticvoidmain(Stringargs[]){

ArrayListal=newArrayList()。

=5。

for(intj=0。

j<

=4。

j++){

if((i*3+j*5)!

=0&

&

!

al.contains(i*3+j*5)){

al.add(i*3+j*5)。

Collections.sort(al)。

System.out.println("

总共的邮资数是:

+al.size())。

他们从小到大的依次书序是:

for(Objecto:

al){

System.out.print(o+"

-"

\b"

2importjava.util.*。

publicclassT2{

publicstaticvoidmain(String[]args){

Objecto1=newObject()。

ThreadTwot2=newThreadTwo(o1)。

ThreadOnet1=newThreadOne(o1,t2)。

t1.start()。

//为确保t1先运行我让t2在t1的run方法里面启动

staticclassThreadOneextendsThread{

Objecta。

Threadt。

publicThreadOne(Objecto1,Threadt2){

a=o1。

t=t2。

publicvoidrun(){

t.start()。

synchronized(a){

try{

我是A:

我要先睡一个小时"

a.wait(1000*3600)。

我是A:

我被吵醒了"

catch(Exceptione){e.printStackTrace()。

staticclassThreadTwoextendsThread{

publicThreadTwo(Objecto1){

booleanflag=true。

Scannersc=newScanner(System.in)。

while(flag){

sleep(1000)。

我是线程B:

起床"

al.add

(1)。

System.out.println()。

if(al.size()==3){

a.notify()。

flag=false。

}catch(Exceptione){

e.printStackTrace()。

3

importjava.awt.GridLayout。

importjava.awt.event.KeyEvent。

importjava.awt.event.KeyListener。

importjavax.swing.JTextArea。

importjavax.swing.JTextField。

publicclassT3{

JFrameframe。

JTextFieldjtf。

JTextAreajtf2。

JButtonbutton。

publicT3(){

frame=ne

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

当前位置:首页 > 初中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1