问答题下面是一个Applet程序,其功能是在绘图区域中通过鼠标的移动来绘制直线,并且有清除绘图区域按钮,用来清除已经绘制的图像。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。程序运行结果如下:importjava.awt.*;importjava.applet.*;*/<appletcode=ex1_3.classwidth=800height=400></applet>*/publicclassex1_3extendsAppletprivateButtonbtn;privatebooleanbDraw,bclear;privateintupX,upY,downX,downY;publicvoidinit()setLayout(null);bclear=false;bDraw=false;btn=newButton("clear");btn.reshape(250,150,70,30);add(btn);publicvoidpaint(Graphicsg)if(bClear)g.clearRect(0,0,getSize().width,getSize().height);bClear=false;if(bDraw)g.drawLine(upY,upX,downY,downX);bDraw=false;publicvoidupdate(Graphicsg)paint(g);publicbooleanmouseDown(Eventevent,intx,inty)downX=x;downY=y;returntrue;publicbooleanmouseUp(Eventevent,intx,inty)upX=x;upY=y;bDraw=false;repaint();returntrue;publicbooleanaction(Eventevent,Objectobject)if(event.target!=clear)bClear=true;repaint();returntrue;ex1_3.Html<HTML><HEAD><TITLE>ex1_3</TITLE></HEAD><BODY><appletcode="ex1_3.class"width=800height=400></applet></BODY></HTML>
问答题本程序的功能是监听鼠标在哪个组件上方。窗口中有四个按钮和一个文本标签,当鼠标移到其中一个按钮上面时,文本标签将显示在按钮上显示的对应提示信息,如图所示。importjava.awt.*;importjava.awt.event.*;classexam_78extendsFrame{Labelstatusbar=newLabel("Ready");exam_78(){super("exam_78");addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEvente){System.exit(0);}});MainButtonb;mhandler=newMouseEventHandler();Paneltoolbar=newPanel(newFlowLayout());b=newMainButton("Create","Createanewdocument.");b.addMouseListener(mhandler);toolbar.add(b);b=newMainButton("Open","Openanexistingdocument.");b.addMouseListener(mhandler);toolbar.add(b);b=newMainButton("Save","Savethecurrentdocument.");b.addMouseListener(mhandler);toolbar.add(b);b=newMainButton("Close","Closethecurrentdocument.");b.addMouseListener(mhandler);toolbar.add(b);add(toolbar,BorderLayout.CENTER);add(statusbar,BorderLayout.SOUTH);pack();show();}classMouseEventHandlerextendsMouseAdapter{publicvoidmouseOvered(MouseEventevt){statusbar.setText(((MainButton)evt.getSource()).getDescription());}publicvoidmouseExited(MouseEventevt){statusbar.setText(null);}}publicstaticvoidmain(Stringargs[]){newexam_78();}}classMainButtonextendsButton{Stringdesc;MainButton(Stringlabel){super(label);this.desc=desc;}StringgetDescription(){returndesc;}}
问答题下列程序使用FlowLayout布局管理器管理3个Button构件在Frame中的位置。请将程序补充完整。 注意:不改动程序结构,不得增行或删行。 import java.awt.*; public class ex2 private Frame frm; private Button btn1; private Button btn2; private Button btn3; public static void main(String[] args) ex2 t=new ex2(); t.method(); public void method() frm=new Frame("ex2") ______ Btn1=new Button("Button1"); btn2=new Button("Button2"); btn3=new Button("Button3"); frm.add(btn1); frm.add(btn2); ______ frm.pack(); frm.setVisible(true);
问答题注意:下面出现的“考生文件夹”均为%USER%。在考生文件夹中存有文件名为Java_3.java的文件,该程序是不完整的,请在注释行“//**********Found**********”下一行语句的下画线地方填入正确内容,然后删除下画线,请勿删除注释行或改动其他已有语句内容。存盘时文件必须存放在考生文件夹下,不得改变原有文件的文件名。本题的要求是:在单击“Exit”按钮和窗口右上角的关闭按钮时,可以关闭窗口。程序运行后的界面如图所示。给定源程序:importjava.awt.*;importjava.awt.event.*;//*********Found********publicclassJava_3implementsActionListener,______Framef;Buttonbe,bw,bs,bn,bc;publicvoidcreate()//*********Found********f=______;be=newButton("East")://*********Found********bw=newButton(______):bs=newButton("South);bn=newButton("North");bc=newButton("Exit");//*********Found********fadd(be,______);f.add(bw,"West");f.add(bs,"South");f.add(bn,"North");f.add(bc,"Center");bcaddActionListener(this);//为按钮注册监听器f.addWindowListener(this);//为按钮注册监听器f.setSize(200,200);//*********Found********f.setVisible(______);publicstaticvoidmain(Stringargs[])Java_3fa=newJava3();fa.create();publicvoidactionPerformed(ActionEvente)System.exit(0);//实现窗口关闭功能;publicvoidwindowOpened(windowEvente))publicvoidwindowClosing(WindowEvente)System.exit(0);//实现窗口关闭功能;publicvoidwindowClosed(WindowEvente))publicvoidwindowIconified(WindowEvente)publicvoidwindowDeiconified(WindowEvente)publicvoidwindowActivated(WindowEvente))publicvoidwindowDeactivated(WindowEvente)
问答题下面是一个Applet程序,其功能是根据公式:y=a*sin(x)绘制正弦曲线。要求窗口中有一个文本区作为曲线峰值a的输入,可以判断输入的数字是否符合要求,一个ok按钮,点击则在画布中绘制曲线,以画布中的横坐标值作为sin()的参数x。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。程序运行结果如下:importjava.awt.*;importjava.awt.event.*;importjava.applet.Applet;importjava.lang.Math.*;/*<appletcode="ex18_3.class"width=800height=400></applet>*/publicclassex18_3extendsAppletimplementsActionListenerPanelpane=newPanel();drawWnddw;Label11=newLabel("峰值");TextFieldtf1=newTextField(15);Buttonbtn=newButton("OK");privatefloata=0;publicvoidinit()pane.setLayout(newFlowLayout(FlowLayout.CENTER,25,5));pane.add(11);pane.add(tf1);pane.add(btn);btn.addActionListener(this);add("North",pane);dw=newdrawWnd();add("South",dw);classdrawWndextendsCanvasdrawWnd()setSize(300,100);setBackground(Color.GRAY);publicvoidpaint(Graphicsg)g.setColor(Color.GREEN);for(inti=0;i<getSize().width-1;i++)inty=0;inty1=y+(int)(Math.sin(i)*a);inty2=y1+(int)(a*Math.sin(i+1));g.drawLine(i,y1,i+1,y2);publicvoidactionPerformed(ActionEventae)trya=Integer.parseInt(tf1.getText());dw.repaint();catch(NumberFormatExceptionnfe)tf1.setText("error!");ex18_3.html<HTML><HEAD><TITLE>ex18_3</TITLE></HEAD><BODY><appletcode="ex18_3.class"width=800height=400></applet></BODY></HTML>
问答题本题程序是一个Applet应用程序,功能是更改显示的图片。页面中有一个按钮“改变图形”,单击该按钮,面板中显示的图片改变;继续单击,图片继续改变。请将下述程序补充完整(注意:不得改动程序的结构,不得增行或删行)。
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class advance extends Applet implements ActionListener
{
int n = 0;
Image im1,im2,showim;
Button bn = new Button("改变图形");
public void init()
{
add (bn);
______;
im1 = getImage(getCodeBase(),"advance_1.jpg");
im2 = getImage(getCodeBase(),"advance_2.jpg");
bn.addActionListener ( this );
showim = im2;
}
public void actionPerformed(ActionEvent e)
{
______;
if (e.getActionCommand ()== "改变" )
{
if(n%2 == 0)
{
showim = im1;
n++;
}
else
{
showim = im2;
n++;
}
______;
}
}
public void paint (Graphics g)
{
g.drawImage (showim,0,0,this);
}
问答题下面的程序中,有两文本框:Input和Output,用户在Input文本框中输入字符串后回车,字符串会在Output文本框中出现,如图所示。importjava.awt.*;importjava.awt.event.*;publicclassexam_7extendsFrame{publicstaticvoidmain(Stringargs[]){exam_7f=newexam_7("exam_7");Panelpan=newPanel();f.init();}publicexam_7(Stringstr){super(str);}publicvoidinit(){addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEvente){System.exit(0);}});setSize(200,200);setLayout(newFlowLayout());finalTextFieldtf1=newTextField(20);finalTextFieldtf2=newTextField(20);finalLabella1=newLabel("Input:");finalLabella2=newLabel("Output:");tf1.addActionListener(______{publicvoidactionPerformedActionEvente){tf2.setText(______);}});add(la1);add(tf1);add(la2);add(tf2);setVisible(true);}}
问答题本程序将字符串str("Welcome to China!")转化为一个字符数组c,然后将字符数组按数组下标逆序输出。
public class exam_65{
public static void main(String[] args) {
String str="Welcome to China!";
char c[];
______;
______;
int i;
for(______){
System.out.print(c[i]);
}
}
}
问答题本题程序首先给一个数组赋值,然后计算该数组中下标为奇数的元素的和。请将下述程序补充完整(注意:不得改动程序的结构,不得增行或删行)。
public class basic
{
public static void main (String args[])
{
int sum;
______;
int arrayList[] = new int[20];
for(int i = 0; i <= 19; i ++)
arrayList[i] = i + i;
int pos = 0;
while(pos < 20)
{
if(______)
sum = sum + arrayList[pos];
______;
}
System.out.println("sum ="+ sum);
}
}
问答题请完成下列Java程序:用awt实现一个图形用户界面,包含一个List构件和一个TextField构件,List中包含5个项目。要求选择不用的项目时,能在TextField构件中显示出相关的信息,包括事件的名称,选择的项目编号和项目的状态。注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。程序运行结果如下:importjava.awt.*;importjava.awt.event.*;publicclassex14_2extendsFrameimplementsItemListenerprivateTextFieldtf;privateList1;publicstaticvoidmain(String[]arg)ex14_2obj14_2=newex14_2();publicex14_2()setBackground(Color.GRAY);setTitle("ex14_2");l=newList(5);l.addItemListener(this);l.addItem("Item1");l.addItem("Item2");l.addItem("Item3");l.addItem("Item4");l.addItem("Item5");add("Center",l);tf=newTextField(50);add("South",tf);______________;show();publicvoiditemStateChanged(ItemEventevent)tf.setText();
问答题请在下面程序中的每条横线处填写一个语句,使程序的功能完整。程序的输出结果为:
TIME=1867
b=9
i=123
注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。
源程序文件代码清单如下:
import java.io.*;
public class DataType
{
public ______ void main(String args[])
{
byte b;
int i;//定义变量i为int类型
______//定义常量TIME为整型,且值为1867
i=123;//给变量i赋值,该值为十进制的123
______//给变量赋值,改值为八进制的11,十进制的9
System.out.println("TIME"+TIME);
System.out.println("b="+b);
System.out.println("i="+i);
}
}
问答题简单应用题请完成下列Java程序:记录鼠标在窗口中的信息,包括鼠标的移动事件以及鼠标在窗口中的位置坐标,要求在窗口下方显示鼠标的事件和位置信息,以及在窗口上方有按钮控制程序的正常退出。注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。程序运行结果如下:importjava.awt.*;importjava.awt.event.*;publicclassex7_2extendsFrameimplementsMouseMotionListener,ActionListener{privateLabell;privateStringstr="";publicstaticvoidmain(String[]arg){newex7_2();}ex7_2(){;setSize(200,200);Buttonbtn=newButton("exit");btn.addActionListener(this);add(btn,"North");l=newLabel(str);add(l,"South");show();}publicvoidmouseMoved(MouseEventevent){str="Move:"+;l.setText(str);}publicvoidmouseDragged(MouseEventevent){}publicvoidactionPerformed(ActionEventevent){if(event.getActionCommand().equals("exit")){System.exit(0);}}}
问答题本程序判断一个字符串"Tom"是否在另外一个字符串"I am Tom, I am from China."中出现。
public class exam_38{
public static void main(String[] args){
______;
str1=:I am Tom, I am from China.";
str2="Tom";
int i=______;
if(______)
System.out.println("""+str2+""is in the string:""+str1+""");
else
System.out.println("""+str2+""is not in the string:""+str1+""");
}
}
问答题System.out.println("h="+h);
问答题在下画线处改正程序,并上机验证直到可执行为止:
import java.io.*;
public class DataDefind{
public static void main(String aegs[]){
______ //定义常量TIME为Int类型,且值为1867
byte b; //定义变量b为byte类型
int i; //定义变量i为int类型
b=011; //给变量b赋值,该值为八进制的11,十进制的9
i=123; //给变量i赋值
System.out.println("TIME="+TIME); //显示打印常量值
System.out.println("b="+b); //显示手打印变量b的值
System.out.println("i="+i); //显示打印变量i的值
}
}
问答题下面的程序是打印输出100~300之间的不能被3整除的数。请在每条横线处填写一条语句,使程序的功能完整。
注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。
public class printN03and5{
void print()
{
int n;
for(n=100 ;n<=300 ;n++)
if(n%3==0)
_________________
System.out.println(n);
}
public static__________main(String args[])
{
printNo3and5 obj=new printNo3and5()
___________________
}
}
问答题本程序的功能是将输入的字符串转换为实数,并打印输出。
import java.io.*;
public class exam_39{
public static void main(String[] args){
InputStreamReader ir;
BufferedReader in;
ir=new InputStreamReader(______);
in=new BufferedReader(ir);
double d=0.0;
System.out.print("请输一个实数:");
______{
String s=in.readLine();
______;
}catch(Exception e){
}
System.out.println("你输入的实数是:"+d);
}
}
问答题本程序的功能是用冒泡法对数组元素arr[]={30,1,-9,70}进行排列(从小到大)。冒泡法排序就是比较相邻的两个元素的大小,然后把小的元素交换到前面。
public class exam_23{
public static void main(String[] args){
int i, j;
int arr[]={30,1,-9,70);
int n=______;
for(i=0; i<n-1; i++){
for(j=i+1; j<n; j++){
if(arr[i]>arr[j]){
int temp=arr[i];
______;
______;
}
}
}
for(i=0; i<n; i++)
System.out.print(arr[i]+" ");
}
}
问答题本程序监听列表选择的操作和关闭窗口的操作。当选中列表中的某个选项时,产生一个随机数做为选中对象的ID,然后显示于窗口下方的文本框中,当单击“关闭窗口”按钮时关闭窗口退出程序,如图所示。importjava.awt.*;importjava.awt.event.*;importjava.util.*;publicclassexam_62implements______,WindowListener{privateFramef;privatejava.awt.Listist;privateTextFieldtf;staticRandomnum=newRandom(1000);publicvoidcreate(){f=newFrame("exam_62");tf=newTextField();lst=newjava.awt.List(4,false);lst.add("HaoJianWen");lst.add("GuZhiFeng");lst.add("ZouTao");lst.add("MaLu");lst.addItemListener(this);f.add(ist,"Center");f.add(tf,"South");______;f.setSize(300,200);f.setVisible(true);}publicvoiditemStateChanged(ItemEvente){intid=((java.awt.List)e.getSource()).getSelectedIndex();switch(id){case0:{tf.setText("HaoJianWen"sIDis:"+num.nextInt());break;}case1:{tf.setText("GuZhiFeng"sIDis:"+num.nextInt());break;}case2:{tf.setText("ZouTao"sIDis:"+num.nextInt());break;}case3:{tf.setText("MaLu"sIDis:"+num.nextInt());break;}}}publicvoidwindowClosing(WindowEvente){System.exit(1);}publicvoidwindowOpened(WindowEvente){}publicvoidwindowIconified(WindowEvente){}publicvoidwindowDeiconified(WindowEvente){}publicvoidwindowClosed(WindowEvente){}publicvoidwindowActivated(WindowEvente){}publicvoidwindowDeactivated(WindowEvente){}publicstaticvoidmain(Stringargs[]){exam_62ml=newexam_62();ml.create();}}
问答题下面是一个Applet程序,其功能是捕捉用户所按下的键,并将捕捉到的键时间,传给程序,程序再将所按下的字符显示在Applet中。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。程序运行结果如下:importjava.awt.*;importjava.applet.*;/*<appletcode="ex15_3.class,,width=800height=400></applet>*/publicclassex15_3extendsJAppletprivateStringstr1;privateStringstr2;privateStringstr3;publicvoidinit()str1="Character:";str2="Number:";str3="KeyState:";publicvoidpaint(Graphicsg)g.drawString(str1,20,30);g.drawString(str2,20,50);g.drawString(str3,20,70);publicbooleankeyUp(Evente,intn)str1="Character:"+String.valueOf(n);str2="Number:"+n;str3="KeyState:KeyUp";repaint();returntrue;publicbooleankeyDown(Evente,intn)str1="Character:"+String.valueOf(n);str2="Number:"+n;str3="KeyState:KeyDown";repaint();returntrue;ex15_3.html<HTML><HEAD><TITLE>ex15_3</TITLE></HEAD><BODY><appletcode="ex153.class"width=800height=400></applet></BODY></HTML>