1. 基本操作题 (本大题共 1 小题,共 30 分)
下列程序中,要求从键盘接受字符输入,知道输入字符为”e”(注意是小写)时停止,并且将输入的字符(“e”之前的字符)显示在屏幕上。请将程序补充完整。
程序运行结果如下:
Keep typing,it will stop while enter ‘e’…
ddfsokjlvncozieowdsfadsf]
ddfsofkjivncozi
import java.io.*;
public class ex4_1{
public static void main(String[] args){
char ch;
System.out.println(“Keep typing, it will stop while enter ‘e’…”);
try{
while((ch=________)!=’e’){
System.___________;
}
}catch(IOException ioe){
System.________;
}
}
}
2. 简单的应用题 (本大题共 1 小题,共 30 分)
请完成下列Java程序:创建一个下拉式菜单,菜单项包括3个CheckboxMenuItem(复选框),一条分割线和一个Exit项,要求打开或关闭复选框时,确定是哪个被切换,是开还是关,并输出它的状态;选择Exit项能够退出程序。
注意:请勿main()主方法和其他已有语句内容,仅在下划线处添入适当的语句。
import java.awt.*;
import java.awt.event.*;
public class ex4_2 extends Frame implements ItemListener ,ActionListener{
public static void main(String[] arg){
ex4_2 obj4_2=new ex4_2();
}
ex4_2(){
super(“ex4_2”);
MenuBar mb=new MenuBar();
Menu m=new Menu(“Menu”);
MenuItem mi;
mb.add
CheckboxMenuItem cb;
cb=new CheckboxMenuItem(“Check1”);
cb.additemListener(this);
m.add(cb);
cb=new CheckboxMenuItem(“Check2”);
cb.additemListener(this);
m.add(cb);
cb=new CheckboxMenuItem(“Check3”);
cb.additemListener(this);
m.add(cb);
m.addSeparator();
m.add(mi=new MenuItem(“Exit”));
mi.addActionListener(this);
setMenuBar(mb);
setSize(50,50);
show();
}
public void itemStateChanged(ItemEvent event){
System.out.print(event.getItem());
switch(event.getStateChange()){
case ItemEvent.DESELECTED;
System.out.println(“DESELECTED”);
break;
case____________________;
____________________:
break;
}
}
public void actionperformed(ActionEvent se){
if(ae.getActionCommand().equals(“Exit”)){
System.exit(0);
}
}
}
3. 综合应用题 (本大题共 1 小题,共 40 分)
下面是一个Applet程序,其功能是从3~100之间(包括3和100)每隔0.5秒显示一个新的数字,如果数字为素数,则显示为灰色,其他颜色为绿色。请改正程序中的错误(有下划线的语句),使程序能够输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
import java.awt.*;
import java.applet.Applet;
/*
<applet code=ex4_3.class width=800 height=400>
</applet>
*/
public class ex4_3 extends Applet{
public Color color4_3=Color.black;
private int n4_3=3;
public myPrime thPrime4_3;
public void init(){
thPrime4_3=new myPrime(this);
thPrime4_3.start();
}
public void paint(Graphics g){
g.setColor(color4_3);
g.drawString(n4_3,50,50);
}
public int getInt(){
return n4_3;
}
public void setInt(int i){
n4_3=I;
}
}
class myPrime extends Thread{
ex4_3 obj4_3;
myPrime (ex4_3 o){
this.obj4_3=o;
}
public Boolean isPrime(int n){
boolean bPrime=ture;
int I=2;
If(n<3||n>100)
Return false;
While(i<n-l&&bPrime){
If((n%i)= =0);
BPrime=false;
i++;
}
return bPrime;
}
public void run(){
int I;
for (i=3;i<100;i++)
if(isPrime(i))
obj4_3.color4_3=Color.gray;
else
obj4_3.color4_3=Color.green;
obj4_3.n4_3;
obj4_3.repaint();
try{
sleep(500);
}catch(InterruptedException ie){
}
}
}
}
ex4_3.html
<HTML>
<HEAD>
<TITLE>ex4_3</TITLE>
</HEAD>
<BODY>
<applet code=”ex4_3.class“width=800 height=400>
</applet>
</BODY>
</HTML>