{
final int number=9; int count=1;
Image[]pic=new Image[number]; Thread myThread; public void init() {
setSize(300,200);
for(int i=1;i<=number;i++) pic[i-1]= ; }
public void start() {
myThread=new Thread(this); myThread.start(); }
public void stop(){myThread=null;} public void run() {
while(true) { repaint();
count=(count+1)%number; try{myThread.sleep(1000);}
catch(InterruptedException e){} } }
public void paint(Graphics g) {
if(pic[count]!=null)
g. (pic[count],10,10,200,200,this); }
} 答案:
getImage(getCodeBase(),i+\drawImage
3. 下面是一个求:1/1+1/2+2/3+3/5+5/8+8/13+13/21+21/32?前20项的和的程序段
float a=1,b=1,s=0;
for(int k=1;k<=10;k++) {
s=s+a/b;
a= s=s+b/a; b= }
System.out.println(s); 答案:a=a+b; b=a+b;
4. 以下程序产生一个确认对话框。
import javax.swing.*; public class Class2905 {
public static void main(String[] args) {
JFrame myWin=new JFrame();
myWin.setBounds(100,100,200,300); myWin.setVisible(true);
myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); int resule= . (myWin, \确实要退出吗?\退出确认\System.out.println(resule); } }
答案:JOptionPane showConfirmDialog
5. 下面应用程序,绘制一个红色五角星。请完成程序。 import java.awt.*;
import javax.swing.*;
class MyPanel extends JPanel {
public void {
int r=100; int x1=100,
x2=(int)(r*(1-Math.cos((18*Math.PI)/180))), x3=(int)(r*(1+Math.cos((18*Math.PI)/180))), x4=(int)(r*(1-Math.cos((54*Math.PI)/180))), x5=(int)(r*(1+Math.cos((54*Math.PI)/180))), y1=0,
y2=(int)(r*(1-Math.sin((18*Math.PI)/180))), y3=(int)(r*(1-Math.sin((18*Math.PI)/180))), y4=(int)(r*(1+Math.sin((54*Math.PI)/180))), y5=(int)(r*(1+Math.sin((54*Math.PI)/180)));
g.drawOval(0,0,200,200);
g.drawLine(x4,y4,x1,y1);g.drawLine(x1,y1,x5,y5); g.drawLine(x5,y5,x2,y2);g.drawLine(x2,y2,x3,y3); g.drawLine(x3,y3,x4,y4); } }
public class C3002 extends JFrame { C3002()
{ super(\
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); getContentPane().add(new MyPanel()); setSize(210,242); setVisible(true); }
public static void main(String[] args) {
new C3002(); } }
答案:paintComponent(Graphics g); g.setColor(Color.RED);
四、程序分析题(本大题共5小题,每小题4分,共20分)
1. 阅读下面程序,写出程序功能及当输入6和9时的运行情况。
import java.awt.*; import javax.swing.*; import java.awt.event.*;
public class Class3402 implements ActionListener {
JButton butt=new JButton(\
JTextField text1=new JTextField(10); JTextField text2=new JTextField(10); JTextField text3=new JTextField(10); public Class3402() {
JFrame myWin=new JFrame(\
myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Container con=myWin.getContentPane(); con.setLayout(new GridLayout(4,1)); con.add(text1);con.add(text2); con.add(butt);con.add(text3); butt.addActionListener(this); myWin.pack();
myWin.setVisible(true); }
public void actionPerformed(ActionEvent e) {
int a=Integer.parseInt(text1.getText()); int b=Integer.parseInt(text2.getText()); int i;
for(i=1;i<=a*b;i++) {
if(i%a==0&&i%b==0)break; }
text3.setText(String.valueOf(i)); }
public static void main(String[]args) {
new Class3402(); } }

