Java学生成绩绩点管理系统
/*
* 班级:信1805-1
* 学号:20183566
* 姓名:董奥
* */ public class ScoreInformation {
private String stunumber;
private String name;
private double mathematicsscore;
private double englishiscore;
private double networkscore;
private double databasescore;
private double softwarescore;
//定义 get()(读取变量信息)和 set()(设置变量信息)的方法
public void setStunumber(String stunumber) {
this.stunumber=stunumber;
}
public String getStunumber() {
return stunumber;
}
public void setName(String name) {
this.name=name;
}
public String getName() {
return name;
}
public void setMathematicsscore(double mathematicsscore) {
this.mathematicsscore=mathematicsscore;
}
public double getMathematicsscore() {
return mathematicsscore;
}
public void setEnglishiscore(double englishiscore) {
this.englishiscore=englishiscore;
}
public double getEnglishiscore() {
return englishiscore;
}
public void setNetworkscore(double networkscore) {
this.networkscore=networkscore;
}
public double getNetworkscore() {
return networkscore;
}
public void setDatabasescore(double databasescore) {
this.databasescore=databasescore;
}
public double getDatabasescore() {
return databasescore;
}
public void setSoftwarescore(double softwarescore) {
this.softwarescore=softwarescore;
}
public double getSoftwarescore() {
return softwarescore;
}
public ScoreInformation(String stunumber,String name,double mathematicsscore,double englishiscore,double networkscore,double databasescore,double softwarescore) {
this.stunumber=stunumber;
this.name=name;
this.mathematicsscore=mathematicsscore;
this.englishiscore=englishiscore;
this.networkscore=networkscore;
this.databasescore=databasescore;
this.softwarescore=softwarescore;
}
// public static void main(String[] args) {
// ScoreInformation text=new ScoreInformation("20183566","董奥",1,2,3,4,5);
// System.out.println(text.getDatabasescore());
// System.out.println(text.getEnglishiscore());
// System.out.println(text.getMathematicsscore());
// System.out.println(text.getStunumber());
// }
}
import java.util.Scanner;
public class ScoreManagement {
static ScoreInformation Score1=new ScoreInformation("20180001","姓名1",0,0,0,0,0);
static ScoreInformation Score2=new ScoreInformation("20180002","姓名2",0,0,0,0,0);
static ScoreInformation Score3=new ScoreInformation("20180003","姓名3",0,0,0,0,0);
static ScoreInformation Score4=new ScoreInformation("20180004","姓名4",0,0,0,0,0);
static ScoreInformation Score5=new ScoreInformation("20180005","姓名5",0,0,0,0,0);
static Scanner in=new Scanner(System.in);
public static void menu(){
System.out.println("***********************************************************");
System.out.println(" 石家庄铁道大学软件工程系");
System.out.println(" 学生学籍管理系统 2019 版");
System.out.println("***********************************************************");
System.out.println(" 1、 学生考试成绩录入");
System.out.println(" 2、 学生考试成绩修改");
System.out.println(" 3、 计算学生成绩绩点");
System.out.println(" 4、退出学籍管理系统");
System.out.println("**********************************************************");
System.out.print("请输入:");
}
public static void totalMenu() {//总菜单
int anss=0;
while(anss!=4) {
menu();
anss=in.nextInt();
if(anss==1) addScore();
else if(anss==2) modifyScore();
else if(anss==3) caculateScore();
else if(anss==4);
else
System.out.println("该选项不存在");
}
System.out.println("退出成功");
System.out.println("***********************************************************\r\n" +
"谢谢使用石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
"制作人:董奥\r\n" +
"***********************************************************");
}
public static void addMenu() {
System.out.println("***********************************************************");
System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
System.out.println(" 学生考试成绩录入");
System.out.println("***********************************************************");
System.out.print(" 请输入学生学号:");
}
public static void addInterface(ScoreInformation h) {//录入成绩界面
System.out.println("***********************************************************");
System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
System.out.println(" 学生考试成绩录入界面");
System.out.println("***********************************************************");
System.out.println("学生学号:"+h.getStunumber());
System.out.println("学生姓名:"+h.getName());
System.out.println("请输入高等数学成绩:");
double ans1=in.nextDouble();
System.out.println("请输入大学英语成绩:");
double ans2=in.nextDouble();
System.out.println("请输入计算机网络成绩:");
double ans3=in.nextDouble();
System.out.println("请输入数据库成绩:");
double ans4=in.nextDouble();
System.out.println("请输入软件工程成绩:");
double ans5=in.nextDouble();
System.out.println("***********************************************************");
System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
System.out.println(" 学生考试成绩录入界面");
System.out.println("***********************************************************");
System.out.println("学生学号:"+h.getStunumber());
System.out.println("学生姓名:"+h.getName());
System.out.println("高等数学成绩:"+ans1);
System.out.println("大学英语成绩:"+ans2);
System.out.println("计算机网络成绩:"+ans3);
System.out.println("数据库成绩:"+ans4);
System.out.println("软件工程成绩:"+ans5);
System.out.print("该学生成绩已录入完毕,是否提交(Y/N)");
String a=in.next();
char s=a.charAt(0);
if(s=='Y'||s=='y') {
h.setMathematicsscore(ans1);
h.setEnglishiscore(ans2);
h.setNetworkscore(ans3);
h.setDatabasescore(ans4);
h.setSoftwarescore(ans5);
}
else
addScore();
}
public static void addScore() {//录入成绩
boolean flag=true;
while(flag) {
addMenu();
String ans=in.next();//将输入的学号存入ans中
if(ans.equals(Score1.getStunumber())) {//检查ans与那个Score相等
addInterface(Score1);
flag=false;
}
else if(ans.equals(Score2.getStunumber())) {
addInterface(Score2);
flag=false;
}
else if(ans.equals(Score3.getStunumber())) {
addInterface(Score3);
flag=false;
}
else if(ans.equals(Score4.getStunumber())) {
addInterface(Score4);
flag=false;
}
else if(ans.equals(Score5.getStunumber())) {
addInterface(Score5);
flag=false;
}
else
System.out.println("该学号不存在1");
}
}
public static void modifyMenu() {
System.out.print("***********************************************************\r\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
" 学生考试成绩修改界面\r\n" +
"***********************************************************\r\n" +
"请输入学生学号:");
}
public static void modifyInterface(ScoreInformation h) {
System.out.print("***********************************************************\r\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
" 学生考试成绩录入\r\n" +
"***********************************************************\r\n" +
"学生学号:"+h.getStunumber()+"\r\n" +
"学生姓名:"+h.getName()+"\r\n" +
"1、高等数学成绩:"+h.getMathematicsscore()+"\r\n" +
"2、大学英语成绩:"+h.getEnglishiscore()+"\r\n" +
"3、计算机网络成绩:"+h.getNetworkscore()+"\r\n" +
"4、数据库成绩:"+h.getDatabasescore()+"\r\n" +
"5、软件工程成绩:"+h.getSoftwarescore()+"\r\n" +
"**********************************************************");
System.out.println("请选择修改内容:");
int ans=in.nextInt();//记录序号
double cmp;//记录接下来输入的成绩
String s;
char a;
switch(ans) {
case 1:
System.out.print("***********************************************************\r\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
" 学生考试成绩录入界面\r\n" +
"***********************************************************\r\n" +
"学生学号:"+h.getStunumber()+"\r\n" +
"学生姓名:"+h.getName()+"\r\n" +
"请输入修改后高等数学成绩:");
cmp=in.nextDouble();
System.out.println("***********************************************************\r\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
" 学生考试成绩录入\r\n" +
"***********************************************************\r\n" +
"学生学号:"+h.getStunumber()+"\r\n" +
"学生姓名:"+h.getName()+"\r\n" +
"1、高等数学成绩:"+cmp+"\r\n" +
"2、大学英语成绩:"+h.getEnglishiscore()+"\r\n" +
"3、计算机网络成绩:"+h.getNetworkscore()+"\r\n" +
"4、数据库成绩:"+h.getDatabasescore()+"\r\n" +
"5、软件工程成绩:"+h.getSoftwarescore()+"\r\n" +
"该学生成绩已修改完毕,是否提交(Y/N)\r\n" +
"**********************************************************");
s=in.next();
a=s.charAt(0);
if(a=='Y'||a=='y') h.setMathematicsscore(cmp);
break;
case 2:
System.out.print("***********************************************************\r\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
" 学生考试成绩录入界面\r\n" +
"*************1**********************************************\r\n" +
"学生学号:"+h.getStunumber()+"\r\n" +
"学生姓名:"+h.getName()+"\r\n" +
"请输入修改后大学英语成绩:");
cmp=in.nextDouble();
System.out.println("***********************************************************\r\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
" 学生考试成绩录入\r\n" +
"***********************************************************\r\n" +
"学生学号:"+h.getStunumber()+"\r\n" +
"学生姓名:"+h.getName()+"\r\n" +
"1、高等数学成绩:"+h.getMathematicsscore()+"\r\n" +
"2、大学英语成绩:"+cmp+"\r\n" +
"3、计算机网络成绩:"+h.getNetworkscore()+"\r\n" +
"4、数据库成绩:"+h.getDatabasescore()+"\r\n" +
"5、软件工程成绩:"+h.getSoftwarescore()+"\r\n" +
"该学生成绩已修改完毕,是否提交(Y/N)\r\n" +
"**********************************************************");
s=in.next();
a=s.charAt(0);
if(a=='Y'||a=='y') h.setEnglishiscore(cmp);
break;
case 3:
System.out.print("***********************************************************\r\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
" 学生考试成绩录入界面\r\n" +
"***********************************************************\r\n" +
"学生学号:"+h.getStunumber()+"\r\n" +
"学生姓名:"+h.getName()+"\r\n" +
"请输入修改后计算机网络成绩:");
cmp=in.nextDouble();
System.out.println("***********************************************************\r\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
" 学生考试成绩录入\r\n" +
"***********************************************************\r\n" +
"学生学号:"+h.getStunumber()+"\r\n" +
"学生姓名:"+h.getName()+"\r\n" +
"1、高等数学成绩:"+h.getMathematicsscore()+"\r\n" +
"2、大学英语成绩:"+h.getEnglishiscore()+"\r\n" +
"3、计算机网络成绩:"+cmp+"\r\n" +
"4、数据库成绩:"+h.getDatabasescore()+"\r\n" +
"5、软件工程成绩:"+h.getSoftwarescore()+"\r\n" +
"该学生成绩已修改完毕,是否提交(Y/N)\r\n" +
"**********************************************************");
s=in.next();
a=s.charAt(0);
if(a=='Y'||a=='y') h.setNetworkscore(cmp);
break;
case 4:
System.out.print("***********************************************************\r\n" +
"石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
"学生考试成绩录入界面\r\n" +
"***********************************************************\r\n" +
"学生学号:"+h.getStunumber()+"\r\n" +
"学生姓名:"+h.getName()+"\r\n" +
"请输入修改后数据库成绩:");
cmp=in.nextDouble();
System.out.println("***********************************************************\r\n" +
"石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
"学生考试成绩录入\r\n" +
"***********************************************************\r\n" +
"学生学号:"+h.getStunumber()+"\r\n" +
"学生姓名:"+h.getName()+"\r\n" +
"1、高等数学成绩:"+h.getMathematicsscore()+"\r\n" +
"2、大学英语成绩:"+h.getEnglishiscore()+"\r\n" +
"3、计算机网络成绩:"+h.getNetworkscore()+"\r\n" +
"4、数据库成绩:"+cmp+"\r\n" +
"5、软件工程成绩:"+h.getSoftwarescore()+"\r\n" +
"该学生成绩已修改完毕,是否提交(Y/N)\r\n" +
"**********************************************************");
s=in.next();
a=s.charAt(0);
if(a=='Y'||a=='y') h.setDatabasescore(cmp);
break;
case 5:
System.out.print("***********************************************************\r\n" +
"石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
"学生考试成绩录入界面\r\n" +
"***********************************************************\r\n" +
"学生学号:"+h.getStunumber()+"\r\n" +
"学生姓名:"+h.getName()+"\r\n" +
"请输入修改后软件工程成绩:");
cmp=in.nextDouble();
System.out.println("***********************************************************\r\n" +
"石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
"学生考试成绩录入\r\n" +
"***********************************************************\r\n" +
"学生学号:"+h.getStunumber()+"\r\n" +
"学生姓名:"+h.getName()+"\r\n" +
"1、高等数学成绩:"+h.getMathematicsscore()+"\r\n" +
"2、大学英语成绩:"+h.getEnglishiscore()+"\r\n" +
"3、计算机网络成绩:"+h.getNetworkscore()+"\r\n" +
"4、数据库成绩:"+h.getDatabasescore()+"\r\n" +
"5、软件工程成绩:"+cmp+"\r\n" +
"该学生成绩已修改完毕,是否提交(Y/N)\r\n" +
"**********************************************************");
s=in.next();
a=s.charAt(0);
if(a=='Y'||a=='y') h.setSoftwarescore(cmp);
break;
default:
System.out.println("输入序号错误");
}
}
public static void modifyScore() {//修改成绩
boolean flag=true;
while(flag) {
modifyMenu();
String ans=in.next();//将输入的学号存入ans中
if(ans.equals(Score1.getStunumber())) {
modifyInterface(Score1);
flag=false;
}
else if(ans.equals(Score2.getStunumber())) {
modifyInterface(Score2);
flag=false;
}
else if(ans.equals(Score3.getStunumber())) {
modifyInterface(Score3);
flag=false;
}
else if(ans.equals(Score4.getStunumber())) {
modifyInterface(Score4);
flag=false;
}
else if(ans.equals(Score5.getStunumber())) {
modifyInterface(Score5);
flag=false;
}
else
System.out.println("该学号不存在2");
}
}
public static void caculateMenu() {
System.out.println("***********************************************************\r\n" +
"石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
"学生考试成绩绩点计算界面\r\n" +
"***********************************************************\r\n" +
"请输入学生学号:");
}
public static void caculateInterface(ScoreInformation h) {
double [] s=new double[5];//分别存储1--5五门学科成绩
s[0]=h.getMathematicsscore();
s[1]=h.getEnglishiscore();
s[2]=h.getNetworkscore();
s[3]=h.getDatabasescore();
s[4]=h.getSoftwarescore();
double[] result=new double[5];//分别存储1-5学科的绩点
double [] credit= {4,3,4,3,2};//存储各科学分
double sum=0;
for (int i = 0; i < s.length; i++) {
if(s[i]>=90) result[i]=4.0;
else if(s[i]>=85&&s[i]<90) result[i]=3.7;
else if(s[i]>=82&&s[i]<85) result[i]=3.3;
else if(s[i]>=78&&s[i]<82) result[i]=3.0;
else if(s[i]>=75&&s[i]<78) result[i]=2.7;
else if(s[i]>=72&&s[i]<75) result[i]=2.3;
else if(s[i]>=68&&s[i]<72) result[i]=2.0;
else if(s[i]>=66&&s[i]<68) result[i]=1.7;
else if(s[i]>=64&&s[i]<66) result[i]=1.5;
else if(s[i]>=60&&s[i]<64) result[i]=1.0;
else result[i]=0;
sum+=result[i]*credit[i];
}
sum/=16;
boolean flag=true;
if(sum<2)
flag=false;
System.out.print("***********************************************************\r\n" +
"石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
"学生考试成绩绩点计算界面\r\n" +
"***********************************************************\r\n" +
"学生学号:"+h.getStunumber()+"\r\n" +
"学生姓名:"+h.getName()+"\r\n" +
"1、高等数学成绩绩点:"+result[0]+"\r\n" +
"2、大学英语成绩绩点:"+result[1]+"\r\n" +
"3、计算机网络成绩绩点:"+result[2]+"\r\n" +
"4、数据库成绩绩点:"+result[3]+"\r\n" +
"5、软件工程成绩绩点:"+result[4]+"\r\n" +
"你的平均学分绩点为:");
System.out.println(String.format("%.2f", sum)); //计算结果保留小数点后两位
if(flag)
System.out.println("提示信息:你的学分绩点已达到毕业要求!");
else
System.out.println("你的学分绩点不满足毕业要求!"); System.out.println("是否返回系统主界面:(Y/N)");
String a;
char c='2';
while(c!='Y'&&c!='y') {
a=in.next();
c=a.charAt(0);
}
}
public static void caculateScore() {//计算学分绩点
boolean flag=true;
while(flag) {
caculateMenu();
String ans=in.next();//将输入的学号存入ans中
if(ans.equals(Score1.getStunumber())) {
caculateInterface(Score1);
flag=false;
}
else if(ans.equals(Score2.getStunumber())) {
caculateInterface(Score2);
flag=false;
}
else if(ans.equals(Score3.getStunumber())) {
caculateInterface(Score3);
flag=false;
}
else if(ans.equals(Score4.getStunumber())) {
caculateInterface(Score4);
flag=false;
}
else if(ans.equals(Score5.getStunumber())) {
caculateInterface(Score5);
flag=false;
}
else
System.out.println("该学号不存在3");
}
}
public static void main(String[] args) {
totalMenu();
}
}
Java学生成绩绩点管理系统的更多相关文章
- java学生成绩管理系统
信1805-1 20183590 田庆辉 石家庄铁道大学 2019 年秋季 ...
- Java学生成绩系统
package text; public class helloworld{ private String stunumber; private String name; private double ...
- Java学生成绩
import java.util.*; public class guanlixiton { public static void main(String[] args) { Scanner in = ...
- c++课设学生成绩与学籍管理系统
题目要求(手打,累):设计一个类CStudent,类中包含一个学生的基本数据如下: 编号,姓名,性别,年龄,数学成绩,计算机成绩,外语成绩. 并假设编号为整数,且从1号往后连续编码:姓名为字符串,性别 ...
- JAVA语言课堂测试01源代码(学生成绩管理系统)
package 考试; /*信1807-8 * 20183798 * 向瑜 */ import java.util.Scanner; //ScoreInformation 类 class ScoreI ...
- Java实现简单的学生成绩管理系统
ScoreInformation.java import java.util.Scanner; class ScoreInformation { private String stunumber ...
- Java开学测试-学生成绩管理系统
题目: 1.定义 ScoreInformation 类,其中包括七个私有变量(stunumber, name, mathematicsscore, englishiscore,networkscore ...
- java简单学生成绩管理系统
题目要求: 一. 数据结构要求:(5 分) 1.定义 ScoreInformation 类,其中包括七个私有变量(stunumber, name, mathematicsscore, englishi ...
- 学生成绩管理系统-JAVA语言测试
首先右键新建一个工程project 选择Java Project,单击next下一步 project命名为“学生成绩管理系统”,点击finish继续 右键src文件夹新建Package包,取名为te ...
随机推荐
- Oracle 表锁定
--锁表查询SQL SELECT object_name, machine, s.sid, s.serial# FROM gv$locked_object l, dba_objects o, gv$s ...
- UVa 1592 Database (map)
题意:给出n行m列的数据库(数据范围: n 1~10000, m 1~10), 问你能不能找出两行r1, r2,使得这两行中的c1, c2列是一样的, 即(r1,c1)==(r2,c1) && ...
- Codeforces Round #303 (Div. 2) D. Queue 水题贪心
题目: 题意:给你n个数值,要求排列这个序列使得第k个数值的前K-1个数的和>=第k个数值的个数尽可能多: #include <iostream> #include <cstd ...
- 一些简单题(2)(Source : NOIP历年试题+杂题)
P3084 [USACO13OPEN]照片Photo 给出$m$个区间$[l_i,r_i]$覆盖$S=[1,n]$,试确定最大特殊点的数使得这每一个区间覆盖且仅覆盖一个特殊点. 如果无解,输出$-1$ ...
- AtCoder AGC036D Negative Cycle (图论、DP)
题目链接 https://atcoder.jp/contests/agc036/tasks/agc036_d 题解 这都是怎么想出来的啊..目瞪口呆系列.. 第一步转化至关重要: 一张图中不存在负环意 ...
- 关于Java 8 forEach
1. forEach and Map 1.1 通常这样遍历一个Map Map<String, Integer> items = new HashMap<>(); items.p ...
- C++入门经典-例3.13-不加break的switch判断语句
1:不加break,会依次运行下面的语句,代码如下: // 3.13.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include &l ...
- linux如何查看所有的用户和组信息(转载)
[步骤一]cat /etc/passwdcat /etc/passwd查看所有的用户信息,详情如下图 [步骤二]cat /etc/passwd|grep 用户名 cat /etc/passwd|gre ...
- Android 6.0动态权限申请
转载(Android 6.0 动态权限申请简单简洁优雅的处理方式): https://blog.csdn.net/lin_dianwei/article/details/79025324
- leetcode 658找到k个最接近的元素
class Solution { public: vector<int> findClosestElements(vector<int>& arr, int k, in ...