当前位置:编程学习 > JAVA >>

JAVA编程,满意追加50

1).个人学分绩点计算程序 (难度:易)

用于计算一个学生的某个学年的n门课程的学年的平均学分绩点。提供窗口界面(JFrame),能够输入每门课程的名称、分数、学分,点击“计算”按钮,然后在界面上会显示一个学年的平均绩点。80~89分折合为3.0~3.9绩点,良好折合为3.5绩点;

70~79分折合为2.0~2.9绩点,中等折合为2.5绩点;

60~69分折合为1.0~1.9绩点,及格折合为1.5绩点;

59分以下(不及格)折合为0绩点。

(注:90分折合为4.0绩点,91 分折合为4.1绩点,其余类推)。一学年的平均学分绩点该学年修全部课程的学分绩点之和÷所修课程的总学分。
追问:你好,我把你的程序放在Net Beans7.0.1中运行有一个错误,还有很多警告,能否帮忙解决一下呢?

答案:package shaco.d20111026;

import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.List;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextArea;
import javax.swing.JTextField;

public class Q1 extends JFrame{
 List<course> store = new ArrayList<course>();
    JLabel course = new JLabel("课程");
    JLabel score = new JLabel("分数");
    JLabel unit = new JLabel("学分");
    JTextField c_n = new JTextField(20);
    JTextField c_s = new JTextField(20);
    JTextField c_u = new JTextField(20);
    JButton js = new JButton("计算");
    JButton sr = new JButton("输入完成继续输入");
    JButton sw = new JButton("浏览");
    JTextArea result = new     JTextArea();
    private void clear(){
        c_n.setText("");
        c_s.setText("");
        c_u.setText("");
    }
public Q1(){
    super("课程绩点计算");
    this.setLayout(new FlowLayout());
    this.add(course);
    this.add(c_n);
    this.add(score);
    this.add(c_s);
    this.add(unit);
    this.add(c_u);
    this.add(sr);
    this.add(js);
    this.add(sw);
    result.setSize(290, 100);
    sw.addActionListener(new ActionListener(){
        @Override
        public void actionPerformed(ActionEvent e) {
            StringBuffer sb = new StringBuffer();
            sb.append("课程名\t"+"分数\t"+"学分\t\n");
            for(course c :store){
                if(c.getScore()<60){
                    c.setGpa(0);
                }else{
                c.setGpa((c.getScore()-60)/10.0+1);
                }
                sb.append(c.getName()+"\t"+c.getScore()+"\t"+c.getUnit()+"\n");
            }
            result.setText("");
            result.setText(sb.toString());
        }
        
    });
    sr.addActionListener(new ActionListener(){
        @Override
        public void actionPerformed(ActionEvent e) {
            String g_n = c_n.getText().trim();
            try{
            int g_s = Integer.parseInt(c_s.getText().trim());
            int g_u = Integer.parseInt(c_u.getText().trim());
            if(g_s <0 || g_s > 100) throw new Exception();
            if(g_u <=0)throw new Exception();
            course c = new course(g_n,g_s,g_u);
            store.add(c);
            clear();
            result.setText("");
            result.setText("输入信息正确");
            }catch(Exception ex){
                result.setText("");
                result.setText("输入数据错误");
                clear();
            }
        }
    });
    js.addActionListener(new ActionListener(){
        public void actionPerformed(ActionEvent e) {
            StringBuffer sb = new StringBuffer();
            sb.append("课程名\t"+"分数\t"+"绩点\t\n");
            double sum = 0;
            double sum_u=0;
            for(course c :store){
                if(c.getScore()<60){
                    c.setGpa(0);
                }else{
                c.setGpa((c.getScore()-60)/10.0+1);
                }
                sb.append(c.getName()+"\t"+c.getScore()+"\t"+c.getGpa()+"\n");
                sum += c.getGpa();
                sum_u+=c.getUnit();
            }
            double avg_gpa = sum / sum_u;
            sb.append("平均学分绩点为:\t"+avg_gpa+"\n");
            result.setText("");
            result.setText(sb.toString());
        }
    });
    this.add(result);
    this.setSize(290, 300);
    this.setVisible(true);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
    new Q1();
}
}
class course{
    private String name;
    private int score;
    private int unit;
    private double gpa;
    public double getGpa() {
        return gpa;
    }
    public void setGpa(double gpa) {
        this.gpa = gpa;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getScore() {
       &

上一个:java 编程问题 写出程序
下一个:求几个java项目

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,