首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请完成下列Java程序:用Swing实现一个简单的学生成绩管理器,显示出学生的姓名、Java成绩、C++成绩和这两门课的平均成绩,学生一共有4个人(Mike,Jack等)。要求可以修改学生的姓名和成绩,并且能够直接计算出平均成绩,如改变Mike的java成
请完成下列Java程序:用Swing实现一个简单的学生成绩管理器,显示出学生的姓名、Java成绩、C++成绩和这两门课的平均成绩,学生一共有4个人(Mike,Jack等)。要求可以修改学生的姓名和成绩,并且能够直接计算出平均成绩,如改变Mike的java成
admin
2009-01-15
58
问题
请完成下列Java程序:用Swing实现一个简单的学生成绩管理器,显示出学生的姓名、Java成绩、C++成绩和这两门课的平均成绩,学生一共有4个人(Mike,Jack等)。要求可以修改学生的姓名和成绩,并且能够直接计算出平均成绩,如改变Mike的java成绩后,在平均成绩栏会自动更新为新的平均成绩。
注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。
源程序文件清单如下:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.table.TableModel;
public class ex03_2 extends JFrame
{
private JTable jt;
private String[][] strData;
public static void main(String[] args)
{
ex03_2 obj03_2=new ex03_2();
obj03_2.pack();
obj03_2.setVisible(true);
}
public ex03_2()
{
String[]columnNames={"name","java","C++","average"};
strData=new String[][]{
{"Mike","70.0","80.0","75.0"},
{"Jack","70.0","100.0","85.0"},
{"David","75.0","95.0","85.0"},
{"Tom","60.0","80.0","70.0"}
};
jt=new JTable(strData,columnNames);
jt.setPreferredScrollableViewportSize(new Dimension(400,200));
JScrollPane tp=new JScrollPane(jt);
setTitle("ex03_2");
Container cp=getContentPane();
cp.add(tp,BorderLayout.CENTER);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent we)
{
System.exit(0);
}
}
jt.setSelectionMode(ListSelectionModel.SINGLE SELECTION);
TableModel tm=jt.getModel();
tm.addTableModelListener(new TableModelListener()
{
public void tableChanged(TableModelEvent tme)
{
int nRow=tme.getFirstRow();
float fNum;
float fSum=0;
for(int i=1;i<=2;i++)
{
fNum=Float.parseFloat(_);
fSum+=fNum;
}
float fAverage=fSum/2;
______;
}
}
}
}
选项
答案
(String)jt.getValueAt(nRow,i) strData[nRow][3]=Float.toString(fAve rage)
解析
本题主要考查用swing基本构件设计图形用户界面,以及对二维数组的基本操作。解题关键是熟悉swing基本构件JTable的使用方法,熟悉swing的基本事件机制,会使用 addTableModelListener()来注册该模型的一个 TableModelListener,一旦表格内容改变,tableChanged()方法会被执行,使用getFirstRow()方法来得到数据被改变的行并重新计算平均值,由于数组是用来存储表格的数据,可以直接更改该数组的值。本题中,第1个空,根据参数nRow和i定位相应的数组中的数据;第2个空,修改数组中记录平均值的单元中的数据。
转载请注明原文地址:https://www.kaotiyun.com/show/SWnp777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
使用如下关系:客户(客户号,名称,联系人,邮政编码,电话号码)产品(产品号,名称,规格说明,单价)订购单(订单号,客户号,订购日期)订购单名细(订单号,序号,产品号,数量)查询客户名称中有“网络”二字的客户信息的正确命令是()。
设当前数据库有20条记录(记录未进行任何索引),当前记录号为1,在下列三种情况下:BOF()为真时,EOF()为真时;命令?RECN()的结果分别是()。
请在考生文件夹下完成下列基本操作题:(1)新建“点歌”数据库,将考生文件夹下的所有自由表添加到该数据库中。(2)新建一个项目“点歌系统”,将“点歌”数据库添加进该项目。(3)为“歌曲”表创建一个主索引,索引名为PK,索引表达式为“歌曲id”;再创建一
(1)编写程序three.prg完成下列操作:根据“外汇汇率”表中的数据产生rate表中的数据。要求:将所有“外汇汇率”表中的数据插入rate表中并且顺序不变,由于“外汇汇率”中的“币种1”和“币种2"存放的是外币名称,而rate表中的“币种1代码”和“
单击表单中的命令按钮,要求弹出一个“祝考试顺利!”的消息对话框,应该在命令按钮的Click事件中编写代码()。
数据独立性是数据库技术的重要特点之一,所谓数据独立性是指
以下主机地址所代表的主机在地理位置上属于中国的是
Runnable接口中包括的抽象方法是______。
捕获异常的统一出口是______语句。
在Java语言中,所有的类都是类______的子类。
随机试题
下列各项中,不属于认股权证的特点的有()。
胸腔穿刺抽液的注意事项。
患者女性,17岁。弛张热7天,2天来面颊部出现对称性水肿性红斑,指端及甲周有红斑。实验室检查示:Hb90g/L,WBC3.4×109/L.尿蛋白(+++),抗核抗体(+),狼疮细胞(+)。患者的诊断是
关于胃肠内在神经丛的叙述.正确的是
严重肝病时.不会出现
《建筑法》规定,建筑工程安全生产管理应建立()
相对第1号准则,境内首次公开发行股票并在创业板上市编制的招股说明书封面增加()要求。
党提出了以“一化三改”为主要内容的过渡时期总路线,实现总路线的可能性是
I’dliketotalkabout(1)inEnglandandWales,andinEnglandandWalesthereare(2)ofcouncil.Forinstance,ifIcouldtak
Gotapenhandy?Tobestestimateyourstart-upcosts,you’llneedtomakealistandthemoredetailedthebetter.Asmartway
最新回复
(
0
)