栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

计算学分绩点

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

计算学分绩点

.平均学分绩点(Grade Point Average,GPA)可以作为学生学习能力与质量的综合评价指标之一。平均学分绩点的计算是将学生修过的每一门课程(包括重修的课程)的课程绩点乘以该门课程的学分,累加后再除以总学分。国内大部分高校通用的计算方法是:课程绩点= 分数/10-5,学分绩点 = 学分×课程绩点。用所学JAVA图形用户界面知识,设计一个用于学生平均学分绩点计算的图形用户界面(Graphical User Interface,GUI)程序。

实现以下基本功能:

(1)建立两个输入框,用于输入学生的学号与姓名;

(2)建立八个输入框,用于输入概率统计、离散数学、数据结构、面向对象程序设计(JAVA)等4门课程的成绩(成绩以百分制表示)及对应学分;

package four;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

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

public class GPA {
	public static void main(String[] args) {
		
		JFrame frame=new JFrame("平均学分绩点计算器");
		frame.setBounds(300,100,400,350);
		frame.setLayout(new BorderLayout());
		
		//上--学号+姓名
		JPanel j1=new JPanel();
		j1.setBackground(Color.decode("#ffb3c2"));
		frame.add(j1,BorderLayout.NORTH);
		JLabel l1=new JLabel("学号");
		j1.add(l1);
		JTextField t1=new JTextField(14);
		j1.add(t1);
		JLabel l2=new JLabel("姓名");
		j1.add(l2);
		JTextField t2=new JTextField(14);
		j1.add(t2);
		
		//中--成绩
		JPanel j2=new JPanel();
		j2.setBackground(Color.decode("#ffccd6"));
		frame.add(j2,BorderLayout.CENTER);
		j2.setLayout(new FlowLayout(FlowLayout.CENTER,20,30));
		
		JLabel l3=new JLabel("概率统计");
		j2.add(l3);
		JTextField t11=new JTextField(7);
		j2.add(t11);
		JLabel l32=new JLabel("学分");
		j2.add(l32);
		JTextField t12=new JTextField(7);
		j2.add(t12);
		
		JLabel l4=new JLabel("离散数学");
		j2.add(l4);
		JTextField t21=new JTextField(7);
		j2.add(t21);
		JLabel l42=new JLabel("学分");
		j2.add(l42);
		JTextField t22=new JTextField(7);
		j2.add(t22);
		
		JLabel l5=new JLabel("数据结构");
		j2.add(l5);
		JTextField t31=new JTextField(7);
		j2.add(t31);
		JLabel l52=new JLabel("学分");
		j2.add(l52);
		JTextField t32=new JTextField(7);
		j2.add(t32);
		
		JLabel l6=new JLabel("  java  ");
		j2.add(l6);
		JTextField t41=new JTextField(7);
		j2.add(t41);
		JLabel l62=new JLabel("学分");
		j2.add(l62);
		JTextField t42=new JTextField(7);
		j2.add(t42);
		
		
		//右--按钮
		JPanel j3=new JPanel();
		j3.setBackground(Color.decode("#ffd9e1"));
		frame.add(j3,BorderLayout.EAST);
		JButton b1=new JButton("计算");
		b1.setSize(5, 5);
		j3.add(b1);
		b1.setBackground(Color.decode("#ffcdb4"));
		
		
		
		
		//下--输出
		JPanel j4=new JPanel();
		j4.setBackground(Color.decode("#ffe5eb"));
		frame.add(j4,BorderLayout.SOUTH);
		JTextField put=new JTextField(40);
		j4.add(put);
		
		
		
		frame.setVisible(true);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		
		
//输入内容并获取
		
		b1.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				
				String id=t1.getText();
				String name=t2.getText();
				//String s1=t11.getText();
				int s1=0;
				s1=Integer.parseInt(t11.getText());
				int x1=0;
				x1=Integer.parseInt(t12.getText());
				int s2=0;
				s2=Integer.parseInt(t21.getText());
				int x2=0;
				x2=Integer.parseInt (t22.getText ()) ;
				int s3=0;
				s3=Integer.parseInt(t31.getText());
				int x3=0;
				x3=Integer.parseInt(t32.getText());
				int s4=0;
				s4=Integer.parseInt(t41.getText());
				int x4=0;
				x4=Integer.parseInt(t42.getText());

				int m1=(s1/10-5)*x1;
				int m2=(s2/10-5)*x2;
				int m3=(s3/10-5)*x3;
				int m4=(s4/10-5)*x4;
				int m=(m1+m2+m3+m4)/4;
				put.setText("姓名:"+name+"t学号:"+id+"t平均学分绩点:"+m);
			//	put.setText(name);
			}
		});
		
		
	}

}
	

给按钮添加事件:

JButton button=new JButton();
button.addActionListener(new ActionListener() {
					
	@Override
	public void actionPerformed(ActionEvent e) {
			// TODO Auto-generated method stub
					
               //这里写内容
    	
			}
		})

输出在文本框:

JTextField textField=new JTextField();
textField.setText("这里写输出的东西!");

 用getText获取文本框内容的时候返回的时候返回的是String类型,用的时候用int类型,所以强制转换一下

JTextField t11=new JTextField(7);//文本框7列
int s1=0;
s1=Integer.parseInt(t11.getText());

界面是这样的 

​​​​​​​

 不对的地方烦请指正,谢谢。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/999050.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号