问题 问答题

请完成下列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做累加。

单项选择题
单项选择题

根据经济普查资料初步测算,我国2004年GDP现价总量中,第一产业增加值为20956亿元;第二产业增加值为73904亿元,其中,工业增加值65210亿元,建筑业增加值8694亿元;第三产业增加值为65018亿元,其中,运输邮电业增加值12148亿元,批发零售贸易餐饮业增加值15250亿元。与2004年全国GDP年快报核算数相比,按经济普查资料计算的G。DP总量增加了23002亿元,提高了16.8%。其中,第一产业因不在这次普查范围内,数据变化不大,重新核算后增加了188亿元;第二产业增加值增加517亿元,提高了0.7%;第三产业增加值增加21297亿元,提高了48.7%。在GDP总量多出的2.3万亿元中,有93%是第三产业引起的。造成第三产业增加值增加较多的原因,主要在于资料来源的增加。经济普查覆盖了第二三产业所有的法人单位、产业活动单位和个体经营户,大大补充了以往常规统计中难以准确全面反映的私营、个体服务业资料以及大量的新兴服务业资源,如计算机服务业、软件业、互联网信息服务和卫生传输服务业、娱乐业、租赁和商务服务业、家政服务业等。通过经济普查,进一步查清并补上了常规统计中第三产业漏统的部分。

2004年GDP重新核算后,与年快报数相比,第一产业、第二产业的比重有所下降,第三产业比重大幅度上升。

第一产业比重由原来的15.2%下降到13.1%,下降了2.1个百分点;

第二产业比重由原来的52.9%下降到46.2 %,下降了6.7个百分点;

第三产业比重由原来的31.9 %上升到40.7%,上升了8.8个百分点。

重新核算后,我们可以看出,我国的服务业在经济整体中的份量不像原来估计的那么低,它对我国经济增长的拉动功不可没。然而,我们也要清醒地看到,虽然目前的三次产业结构比原来核算的要合理得多,但第三产业比重偏低的矛盾依然存在。

运输邮电业和批发零售贸易餐饮业占2004.年GDP现价总量的百分比为()。

A.0.1714

B.0.076

C.0.0954

D.0.4067