请完成下列Java程序:输入2个整数,求最大公约数。要求有2个单行文本区作为输入,2个按钮,一个单击完成计算,一个单击退出程序。 注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。 源程序文件代码清单如下:

admin2009-01-15  37

问题 请完成下列Java程序:输入2个整数,求最大公约数。要求有2个单行文本区作为输入,2个按钮,一个单击完成计算,一个单击退出程序。
   注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。
   源程序文件代码清单如下:
   import java.awt.*;
   import java.awt.event.*;
   public class ex7_2 extends Frame implements ActionListener
   {
       private Label 1;
       private TextField tf,tf2;
       public static void main(String args[])
       {
           ex7_2 obj7_2=new ex7_2();
       }
       public ex7_2()
       {
           setTitle("ex7_2");
           Panel p1;
           Button b=new Button("OK");
           p1=new Panel();
           tf=new TextField(8);
           p1.add(tf);
           tf2=new TextField(8);
           p1.add(tf2);
           b.addActionListener(this);
           p1.add(b);
           b=new Button("Exit");
           b.addActionListener(this);
           p1.add(b);
           add("North",p1);
           Panel p2=new Panel();
           l=new Label("最大公因数:");
           p2.add(l);
           add("Center",p2);
           setsize(500,300);
           show();
       }
       public void actionPerformed(ActionEvent ae)
       {
           if(ae.getActionCommand().equals("Exit"))
                    //比较ae对象的标识名,是否为Exit
               System.exit(0);
           else if(ae.getActlonCommand().equals("OK"))
           {
               try
               {
                   int a=Integer.parseInt(tf.getText());
                   int b=Integer.parseInt(tf2.getText());
                   int r,i;
                   while(b>0){
                   ______;
                   ______;
                   b=r;
               }
               l.setText("最大公约数: "+Integer.toString(a));
               }catch{NumberFormatException  nfe)
               {
                   l.setText("请正确输入!");
               }
           }
       }
   }

选项

答案r=a%b a=b

解析 本题主要考查AWT基本构件和事件处理机制以及基本的求最大公因数的算法。解题关键是掌握Button,Panel,Label等构件的使用方法,会处理整数异常,熟练掌握while语句用法。本题中,第1个空,r为a除以b的余数;第2个空,a更新为b的值。
转载请注明原文地址:https://kaotiyun.com/show/i1np777K
0

最新回复(0)