首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请完成下列Java程序:实现换算GPA, 对于学生学习的每一门课程,都输入两个数据:考试成绩和学分,考试成绩按如下公式换算: 90~100:5 75~89: 4 60~74: 3 40~59: 2
请完成下列Java程序:实现换算GPA, 对于学生学习的每一门课程,都输入两个数据:考试成绩和学分,考试成绩按如下公式换算: 90~100:5 75~89: 4 60~74: 3 40~59: 2
admin
2009-01-15
48
问题
请完成下列Java程序:实现换算GPA, 对于学生学习的每一门课程,都输入两个数据:考试成绩和学分,考试成绩按如下公式换算:
90~100:5
75~89: 4
60~74: 3
40~59: 2
40以下:1
GPA等于换算后每门课的成绩的学分加权平均值(∑(成绩×学分)/∑学分)。
要求用图形用户界面实现上述功能,用户窗口包括2个文本区域,一个输入成绩,一个输入学分,一个文本面板用作输出GPA的换算结果,一个按钮,点击实现换算。
注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。
程序运行结果如下:
import java.awt.*;
import java.awt.Event.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.*;
public class exll_2 extends JFrame{
private JTextField jtf1=new JTextField();
private JTextField jtf2=new JTextField();
private JTextPane jtp=new JTextPane();
private JButton jb=new JButton("增加");
private JLabel jll=new JLabel("课程数: ");
private JLabel j12=new JLabe1("学分数: ");
double dTol=0;
int nTolN=0, nCount=0;
public static void main(String[] args) {
exll_2 frm=new exll_2();
frm.setTitle("GPA");
frm.pack();
frm.setVisible(true);
frm.addWindowListener(new WindowAdapter()
public void windowClosing(WindowEvent we) {
System.exit(0);
}
});
}
public exll_2()
Container cp=getContentPane();
cp.setLayout(new GridLayout(4,2));
cp.add(new JLabel("成绩"));
cp.add(jtf1);
cp.add(new JLabel("学分"));
cp.add(jtf2);
jb.addActionListener( new ActionListener() {
public void actionPerformed(ActionEvent ae)
int n1, n2,nt;
n1= Integer.parseInt(jtf1.getText());
n2 = Integer.parseInt(jtf2.getText());
if(n1 <= 100 && nl >= 0){
if( n1 >= 90)
nt = 5;
else if(n1 >= 75)
nt = 4;
else if(n1 >= 60)
nt = 3;
else if( n1 >= 40)
nt = 2;
else
nt = 1;
___________________;
____________________;
nTolN += n2;
if(nCount > 0) {
jll.setText("课程数: "+nCount);
j12.setText("学分数: "+nTolN);
jtp-setText(String.valueOf(dTol/nTolN));
}
}
jtf1.setText( "" );
jtf2.setText( "" );
}
});
cp.add(j11);
cp.add(j12);
cp.add(jb);
cp.add(jtp);
}
}
选项
答案
dTol += nt*n2 nCount ++
解析
本题主要考查简单应用swing基本构件和布局管理器实现图形用户界面的设计,并能按题目要求设计换算GPA的算法。解题关键是熟悉熟悉swing的基本构件库,包括JTextField,JFrame,JTextPane,JButton,swing的事件机制以及GridLayout布局管理器的使用,还需要理解题干中的信息,并根据信息给出解决问题的算法。本题中,第1个空,计算∑(成绩×学分);
第2个空,对课程计数器nCount做累加。
转载请注明原文地址:https://kaotiyun.com/show/fIID777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
2006年全国A股成交金额比2005年增长( )2001~2006年,我国上市公司数目增加最多的年份是( )
2006年度,江苏省医疗结构中,非营利性医疗机构比营利性医疗机构多____。与上年相比,2006年度江苏省社区卫生服务中心的增长率比社区卫生服务站的增长率____。
根据我国《劳动合同法》的规定,下列关于劳动合同的表述错误的一项是()。
张某在路上发现有小偷正在对行人李某行窃,便立刻上前阻止,结果被该小偷用刀刺伤。张某共花费医疗费用5万元。针对该情况,下列表述中正确的是()。
下列说法不符合《环境保护法》规定的一项是()。
价格机制的核心内容是()。
关于黄淮海平原的叙述,正确的是()。
①在无意义面前,大脑由于寻找不到答案而引发焦虑,当然这是积累到固定阈值之后的事情②权利是伴随选择而产生的,譬如电视机的频道转换器就给了观众看与不看的权利③人的大脑有一种无法改变的功能,即不断地追索词语以及所有事情的意义④如果在
下列属于程序法部门中的非诉讼程序法的是()
下列能够正确创建线程的方法是()。①继承java.lang.Thread类,并重写run()方法②继承java.lang.Runnable类,并重写start()方法③实现java.lang.Thread接口,并实现run()方法④实现java
随机试题
为保证安全,在给焊炬点火时,最好先开氧气,点燃后再开乙炔。 ()
肺内压的变化是
大体积混凝土构筑物拆模时,混凝土表面与中心、与室外的温差不超过()。
发展中国家
下列有关证券公司公开发行债券募集说明书的表述中,错误的是()。
根据科尔伯格的观点,道德推理的最高阶段是()
下列选项中结果为0的是()。
Manystudentsfindtheexperienceofattendinguniversitylecturestobeaconfusingandfrustratingexperience.Thelecturerspe
Whattheyhaveincommonisthattheyhaveahighobjectinlife.
A、TheimpactoftheInternetonourhealth.B、Thedamagescausedtoaweb-addict.C、Theincreasedcomputeruse.D、Thevastinfor
最新回复
(
0
)