问答题

本程序是一个表格式的程序单,其中包括“姓名”、“英语成绩”、“数学成绩”和“总成绩”,姓名和成绩都可以进行修改,单击“计算每人总成绩”按钮,则可以统计出每个人的总成绩并显示在总成绩栏中(注意:输入成绩后回车数据才真正录入),如图所示。


import javax.swing.*;
import java. awt. *;
import java.awt.event.*;
public class exam_99 extends JFrame implements ActionListener
{ JTable table;Object a[] [];
Object name [] ={ "姓名", "英语成绩", "数学成绩", "总成绩" };
JButton button;
exam_99()
{ setTitle("exam_99");
a=new Object[8] [4];
for(int i=0;i<8;i++)
{ for(int j=0;j<4;j++)
{if(j!=0)
a[i][j]="";
else
a[i][j]="";
}
}
button=new JButton("计算每人总成绩");
table= ______;
button.addActionListener(this);
getContentPane().add(new JScrollPane(table),BorderLayout.CENTER
getContentPane().add(button,BorderLayout. SOUTH);
setSize(400,200);
setVisible(true);
validate();
addWindowListener(new WindowAdapter()
{public void windowClosing(WindowEvent e)
{ System.exit(0);
}
});
}
public void actionPerformed(ActionEvent e)
{ for(int i=0;i<8;i++)
{ double sum=0;
boolean boo=true;
for(int j=1;j<=2;j++)
{ try{
sum=sum+Double.parseDouble(______);
}
catch(Exception ee)
{
boo=false;
table.repaint();
}
if(boo==true)
{
a[i] [3]=""+sum;
table, repaint ();
}
}
}
}
public static void main(String args[])
{ exam_99 Win=new exam_99();
}
}

【参考答案】

第1处:new JTable(a,name)
第2处:a[i][j].toString()
热门 试题

问答题
本程序中定义了一个树型的通讯录,窗口左侧是一个树,右侧是一个文本域,单击树节点,则在右侧文本域中显示相关信息,如果单击的是子节点,则显示对应名字的电话信息,如图所示。import javax, swing.*;import javax.swing.tree.*;import java. awt. *;import java.awt.event.*;import javax, swing, event.*;class Mytree2 extends JFrame ______{ JTree tree=null;JTextArea text=new JTextArea(20,20);Mytree2(){ Container con=getContentPane();DefaultMutableTreeNode root=new DefaultMutableTreeNode( 同学通迅录 );DefaultMutableTreeNode t1=new DefaultMutableTreeNode ( 大学同学 );DefaultMutableTreeNode t2=new DefaultMutableTreeNode ( 研究生同学 );DefaultMutableTreeNode t11=new DefaultMutableTreeNode ( 陈艳 );DefaultMutableTreeNode t12=new DefaultMutableTreeNode ( 李小永 );DefaultMutableTreeNode t21=new DefaultMutableTreeNode ( 王小小 );DefaultMutableTreeNode t22=new DefaultMutableTreeNode ( 董小 );root. add (t1); root. add(t2);t1.add(t1_1); t1.add (t1_2); t2.add(t2_1);t2.add(t2_2);tree =new JTree(root);JScrollPane scrollpane=new JScrollPane(text);JSplitPane splitpane=new JSplitPane (JSplitPane.HORIZONTALSPLIT,true, tree, scrollpane);tree. addTreeSelectionListener (this);con. add (splitpane);addWindowListener (new WindowAdapter (){ public void windowClosing(WindowEvent e){System.exit (0); } });setVisible (true); setBounds (70, 80,200,300);}public void valueChanged (TreeSelectionEvent e){ if (e.getSource () ==tree){ DefaultMutableTreeNode node=( De faultMutableTreeNode) tree. getLastSelectedPathComponent ( );if (node. isLeaf ()){ String str= ______;if (str.equals ( 陈艳 ) ){text.setText(str+ :联系电话: 0411-4209876 );}else if(str.equals ( 李小永 )){text.setText(str+ :联系电话: 010-62789876 );}else if(str.equals( 王小小 )){text.setText(str+ :联系电话: 0430-63596677 ); }else if(str.equals( 董小 )){text.setText(str+ :联系电话: 020-85192789 ); }}else{text.setText (node.getUserObject () .toString ());}}}}public class exam_100{public static void main(String args[]){ Mytree2 win=new Mytree2();win.pack();}}
问答题
本程序的功能是计算圆和三角形的面积,通过“选择”菜单可以分别进行圆和三角形面积的计算,单击“圆面积计算”菜单项,窗口中就会显示两个文本框和一个“确定”按钮,在第一个文本框中输入圆的半径,单击“确定”按钮后就可以在第二个文本框中显示圆的面积。单击“三角形面积计算”菜单项,窗口中就会显示四个文本框和一个“确定”按钮,在前三个文本框中分别输入三角形三个边的长度,单击“确定”按钮后,如果三个边的长度不能组成三角形,则在结果文本框中给出提示信息,否则显示三角形的面积。如果输入的值不是数值,则给出提示信息,如图所示。import java.awt.*;import java.awt.event.*;class circle extends Panel imDlements ActionListener{double r, area;TextField radius=null,result=null;Button b=null;void circle(){radius=new TextField(10);result=new TextField(10);b=new Button( 确定 );add (new Label ( 输入半径 ));add (radius);add(new Label( 面积是: ));add(result);add(b);b.addActionListener(this);result.setEnabled(false);}public void actionPerformed(ActionEvent e){try{ r=Double.parseDouble(radius.getText());area=Math. PI*r*r;result.setText( +area);catch(Exception ee){ radius.setText( 请输入数学字符 );}}}class triangle extends Panel implements ActionListener{ double a=O,b=O,c=O,area;TextField border a=new TextField(6),border b=new TextField(6),border c=new TextField(6),result=new TextField(24);Button button=new Button( 确定 );triangle(){add (new Label ( 输入三边的长度: ));add(border_a); add(border_b); add(border_c);add (new Label( 面积是: ));add (result);add (button);button.addActionListener(this);result.setEnabled(false);}public void actionPerformed(ActionEvent e){ try{ a=Double.parseDouble(border a.getText());b=Double.parseDouble(border_b.getText());c=Double.parseDouble(border_c.getText());if(a+b>c&&a+c>b&&c+b>a){ double p=(a+b+c) 2;area=Math, sqrt (p* (p-a) * (p-b) * (p-c));result, setText ( +area);}else{ result, setText ( 您输入的数字不能形成三角形 );}}catch(Exception ee){ result, setText ( 请输入数字字符 );}}}class Win extends JFrameimplements ActionListener{ MenuBar bar=null;Menu menu=null;MenuItem item1, item2;circle circle;triangle trangle;Win ( ){ bar=new MenuBar(); menu=new Menu( 选择 );setSize(300,200);item1=new MenuItem ( 圆面积计算 );item2=new MenuItem( 三角形面积计算 );menu.add(item1);menu.add(item2);bar.add(menu);setMenuBar(bar);circle=new circle();trangle=new triangle();item1.addActionListener(this);item2.addActionListener(this);setVisible(true);}public void actionPerformed(ActionEvent e){ if(e.getSource()==item1){ removeAll();add(circle, Center );validate();}else if(e.getSource()==item2){ removeAll();add(trangle, Center ;validate();}}}public class exam_1{ public static void main(String args[]){ Win win=new Win();win.setTitle( exam_1 );win.setBounds(100,100,700,300);win.setVisible(true);win.addWindowListener(new WindowListener(){ public void windowClosing(WindowEvent e){ System.exit(0);}});}}