(一).题目要求:
一、数据结构要求:(5 分)
1、定义 ScoreInformation 类,其中包括七个私有变量(stunumber,
name, mathematicsscore, englishiscore,networkscore, databasescore,
softwarescore)。
各成员的含义如下:
变量 stunumber 为字符串类型 String,用于存储学生的学号(有 8 位数
字组成)。
变量 name 为字符串类型 String,用于存储学生的姓名。
变量 mathematicsscore 为 double 类型,用于存储学生的高等数学成绩,
高等数学的学分为 4 分。
变量 englishiscore 为 double 类型,用于存储学生的大学英语成绩,大学
英语的学分为 3 分。
变量 networkscore 为 double 类型,用于存储学生的计算机网络成绩,计
算机网络的学分为 4 分。变量 databasescore 为 double 类型,用于存储学生的数据库成绩,数据库
的学分为 3 分。
变量 softwarescore 为 double 类型,用于存储学生的软件工程成绩,软件
工程的学分为 2 分。
对每个变量定义 get()(读取变量信息)和 set()(设置变量信息)的
方法。
2 、 赋 初 值 方 法 包 括 七 个 参 数 , 用 于 为 变 量 (stunumber ,
name, mathematicsscore, englishiscore,networkscore, databasescore,
softwarescore)赋值。
二、功能要求:(10 分)
该系统完成学生成绩录入,修改,计算学分积点和查询学生成绩的简单
功能,定义 ScoreManagement 类完成下列功能。
1、利用数组实现至少存储五个学生的信息; (将考生信息作为第一条记
录)。(1 分)
2、学生成绩管理系统的主界面如下图所示:(1 分)
①界面要求;(0.5 分)
***********************************************************
石家庄铁道大学软件工程系
学生学籍管理系统 2019 版
***********************************************************
1、 学生考试成绩录入
2、 学生考试成绩修改
3、 计算学生成绩绩点
4、退出学籍管理系统
**********************************************************
②功能说明
输入数字 1-4 执行相应的功能,输入其他数字提示错误信息(该选项
不存在),并返回主界面。(0.5 分)
2、成绩录入功能操作流程:(3 分)
①在主界面选择成绩录入功能后,进入成绩录入界面,如下图所示:(0.5
分)
***********************************************************
石家庄铁道大学软件工程系学生学籍管理系统 2019 版
学生考试成绩录入
***********************************************************
请输入学生学号:XXXXXXXX
**********************************************************
提示用户输入八位的学号。
②用户输入学号后,显示用户学号和姓名,如果用户学号不存在或信息错
误提示错误信息(该学号不存在),并返回成绩录入界面。(0.5 分)
③用户输入学号正确如下图所示:
***********************************************************
石家庄铁道大学软件工程系学生学籍管理系统 2019 版
学生考试成绩录入界面
***********************************************************
学生学号:20183557
学生姓名:杨雄豪
请输入高等数学成绩:XXX
**********************************************************
提示用户输入高等数学成绩,用户输入正确的数字;则提示用户输入大学
英语成绩,依次类推,提示用户录入计算机网络、数据库、软件工程成绩,当
第 3 页 共 8 页用户录完所有成绩后,显示如下界面。(1.5 分)
***********************************************************
石家庄铁道大学软件工程系学生学籍管理系统 2019 版
学生考试成绩录入
***********************************************************
学生学号:20183557
学生姓名:杨雄豪
高等数学成绩:XXX
大学英语成绩:XXX
计算机网络成绩:XXX
数据库成绩:XXX
软件工程成绩:XXX
该学生成绩已录入完毕,是否提交(Y/N)
**********************************************************
选择“Y”将录入成绩保存到相应的数组中,并返回主界面。选择“N”,
则忽略上述成绩录入,并返回成绩录入界面。(0.5 分)
3、成绩修改功能操作流程:(2 分)
①在主界面选择成绩修改功能后,进入考试成绩修改界面,如下图所示:
***********************************************************
石家庄铁道大学软件工程系学生学籍管理系统 2019 版
学生考试成绩修改界面
***********************************************************
请输入学生学号:XXXXXXXX
**********************************************************
提示用户输入八位的学号。(0.5 分)
②用户输入学号后,显示用户学号、姓名和全部成绩信息,如下图所示。
***********************************************************
石家庄铁道大学软件工程系学生学籍管理系统 2019 版
学生考试成绩录入
***********************************************************
学生学号:20183557
学生姓名:杨雄豪
1、高等数学成绩:XXX
2、大学英语成绩:XXX
3、计算机网络成绩:XXX
4、数据库成绩:XXX
5、软件工程成绩:XXX
**********************************************************
如果用户学号不存在或信息错误提示错误信息(该学号不存在),并返回
成绩修改界面。(0.5 分)
③用户选择相应的数字键,切换到如下界面(假如选择数字“5”)。(0.5
分)
***********************************************************
石家庄铁道大学软件工程系学生学籍管理系统 2019 版
学生考试成绩录入界面
***********************************************************
学生学号:20183557
学生姓名:杨雄豪
请输入修改后软件工程成绩:XXX
**********************************************************
录入修改后的成绩,则进入下一步。
***********************************************************
石家庄铁道大学软件工程系学生学籍管理系统 2019 版
学生考试成绩录入
***********************************************************
学生学号:20183557
学生姓名:杨雄豪
1、高等数学成绩:XXX
2、大学英语成绩:XXX
3、计算机网络成绩:XXX
4、数据库成绩:XXX
5、软件工程成绩:XXX
该学生成绩已修改完毕,是否提交(Y/N)
**********************************************************
选择“Y”将修改后成绩保存到相应的数组中,并返回主界面。选择“N”,
则忽略上述成绩录入,并返回成绩修改界面。(0.5 分)
3、计算学生成绩绩点功能操作流程:(2 分)
①在主界面选择计算学生成绩绩点功能后,进入计算学生成绩绩点界面,
如下图所示:
***********************************************************
石家庄铁道大学软件工程系学生学籍管理系统 2019 版
学生考试成绩绩点计算界面
***********************************************************
请输入学生学号:XXXXXXXX
**********************************************************
提示用户输入八位的学号。
②用户输入学号后,显示用户学号、姓名、学分绩点、提示信息。如下图
所示。(1.5 分)
***********************************************************
石家庄铁道大学软件工程系学生学籍管理系统 2019 版
学生考试成绩绩点计算界面
***********************************************************
学生学号:20183557
学生姓名:杨雄豪
1、高等数学成绩绩点:XXX
2、大学英语成绩绩点:XXX
3、计算机网络成绩绩点:XXX
4、数据库成绩绩点:XXX
5、软件工程成绩绩点:XXX
你的平均学分绩点为:XXX
提示信息:XXX XXX XXX XXX XXX XXX XXX
是否返回系统主界面:(Y/N)
**********************************************************
如果学分绩点大于等于 2,提示信息显示“你的学分绩点已达到毕业要
求!”;
如果学分绩点小于 2,提示信息显示“你的学分绩点不满足毕业要求!”
学分绩点计算方法:
(1) 百分制对应绩点
分数 ≥90
85~
89.9
82~
84.9
78~
81.9
75~
77.9
72~
74.9
68~
71.9
66~
67.9
64~
65.9
60~
63.9
<60
绩点 4.0 3.7 3.3 3.0 2.7 2.3 2.0 1.7 1.5 1.0 0
(2)平均学分计算方法
平均学分绩点=∑ ( 课程绩点× 该课程学分) /∑ 课程学分
计算平均学分绩点按四舍五入原则, 小数点后保留两位有效数字。
③选择“Y”返回系统主界面。选择“N”,无操作。(0.5 分)
4、用户选择数字“4”,显示如下界面,退出当前程序。(1 分)
***********************************************************
谢谢使用石家庄铁道大学软件工程系学生学籍管理系统 2019 版
制作人:考生姓名
***********************************************************
(二).代码实现:
1.ScoreInformation类:
package score;
public class ScoreInformation {
private String num;
private String name;
private double mathematicsscore;
private double englishiscore;
private double networkscore;
private double databasescore;
private double softwarescore;
public void setnum(String x)
{
num=x;
}
public String getnum()
{
return num;
}
public void setname(String x)
{
name=x;
}
public String getname()
{
return name;
}
public void setmathematicsscore(double x)
{
mathematicsscore=x;
}
public double getmathematicsscore()
{
return mathematicsscore;
}
public void setenglishiscore(double x)
{
englishiscore=x;
}
public double getenglishiscore()
{
return englishiscore;
}
public void setnetworkscore(double x)
{
networkscore=x;
}
public double getnetworkscore()
{
return networkscore;
}
public void setdatabasescore(double x)
{
databasescore=x;
}
public double getdatabasescore()
{
return databasescore;
}
public void setsoftwarescore(double x)
{
softwarescore=x;
}
public double getsoftwarescore()
{
return softwarescore;
}
public void setall(String nu,String nam,double mathematicsscore1,double englishiscore1,double networkscore1,double databasescore1,double softwarescore1)
{
num=nu;
name=nam;
mathematicsscore= mathematicsscore1;
englishiscore=englishiscore1;
networkscore=networkscore1;
databasescore=databasescore1;
softwarescore=softwarescore1;
}
}
2.ScoreManagement类
package score;
import java.math.BigDecimal;
import java.util.Scanner;
public class ScoreManagement {
ScoreInformation[] n=new ScoreInformation[5];
int t=-1,h=-1,k=-1;
double mathscore,engscore,netscore,datascore,softscore;
double m,e,net,data,soft;
public void getnum_name()
{String s1="20183627",s2="20183628",s3="20183629",s4="20183630",s5="20183631";
String x1="周广阔",x2="赵",x3="钱",x4="孙",x5="李";
n[0]=new ScoreInformation();
n[0].setnum(s1);
n[0].setname(x1);
n[1]=new ScoreInformation();
n[1].setnum(s2);
n[1].setname(x2);
n[2]=new ScoreInformation();
n[2].setnum(s3);
n[2].setname(x3);
n[3]=new ScoreInformation();
n[3].setnum(s4);
n[3].setname(x4);
n[4]=new ScoreInformation();
n[4].setnum(s5);
n[4].setname(x5);
}
public void show()
{
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系\n" +
" 学生学籍管理系统2019版\n" +
"****************************************************************\n" +
" 1、 学生考试成绩录入\n" +
" 2、 学生考试成绩修改\n" +
" 3、 计算学生成绩绩点\n" +
" 4、 退出学籍管理系统\n" +
"****************************************************************");
Scanner sc=new Scanner(System.in);
int j=sc.nextInt();
if(j==1)
{
setscore();
}
else if(j==2)
{
change();
}
else if(j==3)
{
jidian();
}
else if(j==4)
{
exits();
}
else if(j==5)
{
}
else
{
System.out.println("该选项不存在!");
show();
}
}
public void exits()
{
System.out.println("***************************************************************\n" +
" 谢谢使用石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 制作人:周广阔\n" +
"****************************************************************");
}
public void setscore()
{ int i;
String nu,numm,nam;
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入\n" +
"****************************************************************\n"+
" 请输入学生学号:XXXXXXXX\n"+
"****************************************************************");
Scanner sc=new Scanner(System.in);
nu=sc.nextLine();
for(i=0;i<=4;++i)
{ numm=n[i].getnum();
nam=n[i].getname();
if(nu.equals(numm)==true)
{ t=i;
setmathscore();
break;
}
}
if(t==-1)
{
System.out.println("该学号不存在!");
setscore();
}
}
public void setmathscore()
{String numm,nam;
numm=n[t].getnum();
nam=n[t].getname();
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 请输入高等数学成绩:XXX\n"+
"****************************************************************");
Scanner sc=new Scanner(System.in);
mathscore=sc.nextDouble();
if(mathscore>=0&&mathscore<=100)
{
setengscore();
}
else
{ System.out.println("成绩输入有误!");
setmathscore();
}
}
public void setengscore()
{String numm,nam;
numm=n[t].getnum();
nam=n[t].getname();
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 高等数学成绩:"+mathscore+‘\n‘+
" 请输入大学英语成绩:XXX\n"+
"****************************************************************");
Scanner sc=new Scanner(System.in);
engscore=sc.nextDouble();
if(engscore>=0&&engscore<=100)
{
setnetscore();
}
else
{ System.out.println("成绩输入有误!");
setengscore();
}
}
public void setnetscore()
{String numm,nam;
numm=n[t].getnum();
nam=n[t].getname();
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 高等数学成绩:"+mathscore+‘\n‘+
" 大学英语成绩:"+engscore+‘\n‘+
" 请输入计算机网络成绩:XXX\n"+
"****************************************************************");
Scanner sc=new Scanner(System.in);
netscore=sc.nextDouble();
if(netscore>=0&&netscore<=100)
{
setdatascore();
}
else
{ System.out.println("成绩输入有误!");
setnetscore();
}
}
public void setdatascore()
{String numm,nam;
numm=n[t].getnum();
nam=n[t].getname();
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 高等数学成绩:"+mathscore+‘\n‘+
" 大学英语成绩:"+engscore+‘\n‘+
" 计算机网络成绩:"+netscore+‘\n‘+
" 请输入数据库成绩:XXX\n"+
"****************************************************************");
Scanner sc=new Scanner(System.in);
datascore=sc.nextDouble();
if(datascore>=0&&datascore<=100)
{
setsoftscore();
}
else
{ System.out.println("成绩输入有误!");
setdatascore();
}
}
public void setsoftscore()
{String numm,nam;
numm=n[t].getnum();
nam=n[t].getname();
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 高等数学成绩:"+mathscore+‘\n‘+
" 大学英语成绩:"+engscore+‘\n‘+
" 计算机网络成绩:"+netscore+‘\n‘+
" 数据库成绩:"+datascore+‘\n‘+
" 请输入软件工程成绩:XXX\n"+
"****************************************************************");
Scanner sc=new Scanner(System.in);
softscore=sc.nextDouble();
if(softscore>=0&&softscore<=100)
{
setYN();
}
else
{ System.out.println("成绩输入有误!");
setsoftscore();
}
}
public void setYN()
{String numm,nam,f;
numm=n[t].getnum();
nam=n[t].getname();
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 高等数学成绩:"+mathscore+‘\n‘+
" 大学英语成绩:"+engscore+‘\n‘+
" 计算机网络成绩:"+netscore+‘\n‘+
" 数据库成绩:"+datascore+‘\n‘+
" 软件工程成绩:"+softscore+‘\n‘+
" 该学生成绩已录入完毕,是否提交(Y/N)\n"+
"****************************************************************");
Scanner sc=new Scanner(System.in);
f=sc.next();
if(f.equals("Y")==true)
{
n[t].setmathematicsscore(mathscore);
n[t].setenglishiscore(engscore);
n[t].setnetworkscore(netscore);
n[t].setdatabasescore(datascore);
n[t].setsoftwarescore(softscore);
show();
}
else if(f.equals("N")==true)
{
setscore();
}
}
public void change()
{String nu,numm,nam;
int i;
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩修改界面\n" +
"****************************************************************\n"+
" 请输入学生学号:XXXXXXXX\n"+
"****************************************************************");
Scanner sc=new Scanner(System.in);
nu=sc.nextLine();
for(i=0;i<=4;++i)
{ numm=n[i].getnum();
if(nu.equals(numm)==true)
{ h=i;
nam=n[i].getname();
m=n[i].getmathematicsscore();
e=n[i].getenglishiscore();
net=n[i].getnetworkscore();
data=n[i].getdatabasescore();
soft=n[i].getsoftwarescore();
change0();
break;
}
}
if(h==-1)
{
System.out.println("该学号不存在!");
change();
}
}
public void change0()
{String nam,numm;
int x;
nam=n[h].getname();
numm=n[h].getnum();
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 1.高等数学成绩:"+m+‘\n‘+
" 2.大学英语成绩:"+e+‘\n‘+
" 3.计算机网络成绩:"+net+‘\n‘+
" 4.数据库成绩:"+data+‘\n‘+
" 5.软件工程成绩:"+soft+‘\n‘+
"****************************************************************");
Scanner sc=new Scanner(System.in);
x=sc.nextInt();
if(x==1)
{
change1();
}
else if(x==2)
{
change2();
}
else if(x==3)
{
change3();
}
else if(x==4)
{
change4();
}
else if(x==5)
{
change5();
}
else
{
System.out.println("功能选择错误请重试!");
change0();
}
}
public void change1()
{String nam,numm,flag;
nam=n[h].getname();
numm=n[h].getnum();
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 请输入修改后高等数学成绩:XXX\n"+
"****************************************************************");
Scanner sc=new Scanner(System.in);
m=sc.nextDouble();
if(m>=0&&m<=100)
{
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 1.高等数学成绩:"+m+‘\n‘+
" 2.大学英语成绩:"+e+‘\n‘+
" 3.计算机网络成绩:"+net+‘\n‘+
" 4.数据库成绩:"+data+‘\n‘+
" 5.软件工程成绩:"+soft+‘\n‘+
" 该学生成绩已修改完成,是否提交(Y/N)\n" +
"****************************************************************");
Scanner sc1=new Scanner(System.in);
flag=sc1.nextLine();
if(flag.equals("Y")==true)
{
n[h].setmathematicsscore(m);
show();
}
else if(flag.equals("N")==true)
{
change();
}
}
else
{System.out.println("成绩录入有误!");
change1();
}
}
public void change2()
{
String nam,numm,flag;
nam=n[h].getname();
numm=n[h].getnum();
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 请输入修改后大学英语成绩:XXX\n"+
"****************************************************************");
Scanner sc=new Scanner(System.in);
e=sc.nextDouble();
if(e>=0&&e<=100)
{
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 1.高等数学成绩:"+m+‘\n‘+
" 2.大学英语成绩:"+e+‘\n‘+
" 3.计算机网络成绩:"+net+‘\n‘+
" 4.数据库成绩:"+data+‘\n‘+
" 5.软件工程成绩:"+soft+‘\n‘+
" 该学生成绩已修改完成,是否提交(Y/N)\n" +
"****************************************************************");
Scanner sc1=new Scanner(System.in);
flag=sc1.nextLine();
if(flag.equals("Y")==true)
{
n[h].setenglishiscore(e);
show();
}
else if(flag.equals("N")==true)
{
change();
}
}
else
{System.out.println("成绩录入有误!");
change2();
}
}
public void change3()
{
String nam,numm,flag;
nam=n[h].getname();
numm=n[h].getnum();
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 请输入修改后计算机网络成绩:XXX\n"+
"****************************************************************");
Scanner sc=new Scanner(System.in);
net=sc.nextDouble();
if(net>=0&&net<=100)
{
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 1.高等数学成绩:"+m+‘\n‘+
" 2.大学英语成绩:"+e+‘\n‘+
" 3.计算机网络成绩:"+net+‘\n‘+
" 4.数据库成绩:"+data+‘\n‘+
" 5.软件工程成绩:"+soft+‘\n‘+
" 该学生成绩已修改完成,是否提交(Y/N)\n" +
"****************************************************************");
Scanner sc1=new Scanner(System.in);
flag=sc1.nextLine();
if(flag.equals("Y")==true)
{
n[h].setnetworkscore(net);
show();
}
else if(flag.equals("N")==true)
{
change();
}
}
else
{System.out.println("成绩录入有误!");
change3();
}
}
public void change4()
{
String nam,numm,flag;
nam=n[h].getname();
numm=n[h].getnum();
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 请输入修改后数据库成绩:XXX\n"+
"****************************************************************");
Scanner sc=new Scanner(System.in);
data=sc.nextDouble();
if(data>=0&&data<=100)
{
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 1.高等数学成绩:"+m+‘\n‘+
" 2.大学英语成绩:"+e+‘\n‘+
" 3.计算机网络成绩:"+net+‘\n‘+
" 4.数据库成绩:"+data+‘\n‘+
" 5.软件工程成绩:"+soft+‘\n‘+
" 该学生成绩已修改完成,是否提交(Y/N)\n" +
"****************************************************************");
Scanner sc1=new Scanner(System.in);
flag=sc1.nextLine();
if(flag.equals("Y")==true)
{
n[h].setdatabasescore(data);
show();
}
else if(flag.equals("N")==true)
{
change();
}
}
else
{System.out.println("成绩录入有误!");
change4();
}
}
public void change5()
{
String nam,numm,flag;
nam=n[h].getname();
numm=n[h].getnum();
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 请输入修改后软件工程成绩:XXX\n"+
"****************************************************************");
Scanner sc=new Scanner(System.in);
soft=sc.nextDouble();
if(soft>=0&&soft<=100)
{
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩录入界面\n" +
"****************************************************************\n"+
" 学生学号:"+numm+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 1.高等数学成绩:"+m+‘\n‘+
" 2.大学英语成绩:"+e+‘\n‘+
" 3.计算机网络成绩:"+net+‘\n‘+
" 4.数据库成绩:"+data+‘\n‘+
" 5.软件工程成绩:"+soft+‘\n‘+
" 该学生成绩已修改完成,是否提交(Y/N)\n" +
"****************************************************************");
Scanner sc1=new Scanner(System.in);
flag=sc1.nextLine();
if(flag.equals("Y")==true)
{
n[h].setsoftwarescore(soft);
show();
}
else if(flag.equals("N")==true)
{
change();
}
}
else
{System.out.println("成绩录入有误!");
change5();
}
}
public void jidian()
{int i;
String nu,numm,nam;
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩绩点计算界面\n" +
"****************************************************************\n"+
" 请输入学生学号:XXXXXXXX\n"+
"****************************************************************");
Scanner sc=new Scanner(System.in);
nu=sc.nextLine();
for(i=0;i<=4;++i)
{ numm=n[i].getnum();
nam=n[i].getname();
if(nu.equals(numm)==true)
{k=i;
jidian1();
break;
}
}
if(k==-1)
{
System.out.println("该学号不存在!");
jidian();
}
}
public void jidian1()
{int i;
double ji1 = 0,ji2=0,ji3=0,ji4=0,ji5=0,ave=0;
double score1,score2,score3,score4,score5;
String nu,nam,xx;
nu=n[k].getnum();
nam=n[k].getname();
score1=n[k].getmathematicsscore();
score2=n[k].getenglishiscore();
score3=n[k].getnetworkscore();
score4=n[k].getdatabasescore();
score5=n[k].getsoftwarescore();
if(score1>=90&&score1<=100)
{
ji1=4;
}
else if(score1>=85&&score1<=89.5)
{
ji1=3.7;
}
else if(score1>=82&&score1<=84.9)
{
ji1=3.3;
}
else if(score1>=78&&score1<=81.9)
{
ji1=3;
}
else if(score1>=75&&score1<=77.9)
{
ji1=2.7;
}
else if(score1>=72&&score1<=74.9)
{
ji1=2.3;
}
else if(score1>=68&&score1<=71.9)
{
ji1=2;
}
else if(score1>=66&&score1<=67.9)
{
ji1=1.7;
}
else if(score1>=64&&score1<=65.9)
{
ji1=1.5;
}
else if(score1>=60&&score1<=63.9)
{
ji1=1;
}
else if(score1>=0&&score1<60)
{
ji1=0;
}
if(score2>=90&&score2<=100)
{
ji2=4;
}
else if(score2>=85&&score2<=89.5)
{
ji2=3.7;
}
else if(score2>=82&&score2<=84.9)
{
ji2=3.3;
}
else if(score2>=78&&score2<=81.9)
{
ji2=3;
}
else if(score2>=75&&score2<=77.9)
{
ji2=2.7;
}
else if(score2>=72&&score2<=74.9)
{
ji2=2.3;
}
else if(score2>=68&&score2<=71.9)
{
ji2=2;
}
else if(score2>=66&&score2<=67.9)
{
ji2=1.7;
}
else if(score2>=64&&score2<=65.9)
{
ji2=1.5;
}
else if(score2>=60&&score2<=63.9)
{
ji2=1;
}
else if(score2>=0&&score2<60)
{
ji2=0;
}
if(score3>=90&&score3<=100)
{
ji3=4;
}
else if(score3>=85&&score3<=89.5)
{
ji3=3.7;
}
else if(score3>=82&&score3<=84.9)
{
ji3=3.3;
}
else if(score3>=78&&score3<=81.9)
{
ji3=3;
}
else if(score3>=75&&score3<=77.9)
{
ji3=2.7;
}
else if(score3>=72&&score3<=74.9)
{
ji3=2.3;
}
else if(score3>=68&&score3<=71.9)
{
ji3=2;
}
else if(score3>=66&&score3<=67.9)
{
ji3=1.7;
}
else if(score3>=64&&score3<=65.9)
{
ji3=1.5;
}
else if(score3>=60&&score3<=63.9)
{
ji3=1;
}
else if(score3>=0&&score3<60)
{
ji3=0;
}
if(score4>=90&&score4<=100)
{
ji4=4;
}
else if(score4>=85&&score4<=89.5)
{
ji4=3.7;
}
else if(score4>=82&&score4<=84.9)
{
ji4=3.3;
}
else if(score4>=78&&score4<=81.9)
{
ji4=3;
}
else if(score4>=75&&score4<=77.9)
{
ji4=2.7;
}
else if(score4>=72&&score4<=74.9)
{
ji4=2.3;
}
else if(score4>=68&&score4<=71.9)
{
ji4=2;
}
else if(score4>=66&&score4<=67.9)
{
ji4=1.7;
}
else if(score4>=64&&score4<=65.9)
{
ji4=1.5;
}
else if(score4>=60&&score4<=63.9)
{
ji4=1;
}
else if(score4>=0&&score4<60)
{
ji4=0;
}
if(score5>=90&&score5<=100)
{
ji5=4;
}
else if(score5>=85&&score5<=89.5)
{
ji5=3.7;
}
else if(score5>=82&&score5<=84.9)
{
ji5=3.3;
}
else if(score5>=78&&score5<=81.9)
{
ji5=3;
}
else if(score5>=75&&score5<=77.9)
{
ji5=2.7;
}
else if(score5>=72&&score5<=74.9)
{
ji5=2.3;
}
else if(score5>=68&&score5<=71.9)
{
ji5=2;
}
else if(score5>=66&&score5<=67.9)
{
ji5=1.7;
}
else if(score5>=64&&score5<=65.9)
{
ji5=1.5;
}
else if(score5>=60&&score5<=63.9)
{
ji5=1;
}
else if(score5>=0&&score5<60)
{
ji5=0;
}
ave=(ji1*4+ji2*3+ji3*4+ji4*3+ji5*2)/16;
BigDecimal bigDecimal = new BigDecimal(ave);
double f1 = bigDecimal.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
if(f1>=2)
{System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩绩点计算界面\n" +
"****************************************************************\n"+
" 学生学号:"+nu+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 1.高等数学成绩绩点:"+ji1+‘\n‘+
" 2.大学英语成绩绩点:"+ji2+‘\n‘+
" 3.计算机网络成绩绩点:"+ji3+‘\n‘+
" 4.数据库成绩绩点:"+ji4+‘\n‘+
" 5.软件工程成绩绩点:"+ji5+‘\n‘+
" 你的平均学分绩点为:"+f1+‘\n‘+
" 提示信息:你的学分绩点已经达到毕业要求!\n"+
" 该学生成绩已修改完成,是否提交(Y/N)\n" +
"****************************************************************");
for(;;)
{
Scanner sc=new Scanner(System.in);
xx=sc.nextLine();
if(xx.equals("Y")==true)
{
show();
}
else if(xx.equals("N")==true)
{
continue;
}
}
}
else if(f1<2)
{
System.out.println("***************************************************************\n" +
" 石家庄铁道大学软件工程系学生学籍管理系统2019版\n" +
" 学生考试成绩绩点计算界面\n" +
"****************************************************************\n"+
" 学生学号:"+nu+‘\n‘+
" 学生姓名:"+nam+‘\n‘+
" 1.高等数学成绩绩点:"+ji1+‘\n‘+
" 2.大学英语成绩绩点:"+ji2+‘\n‘+
" 3.计算机网络成绩绩点:"+ji3+‘\n‘+
" 4.数据库成绩绩点:"+ji4+‘\n‘+
" 5.软件工程成绩绩点:"+ji5+‘\n‘+
" 你的平均学分绩点为:"+f1+‘\n‘+
" 提示信息:你的学分绩点不满足毕业要求!\n"+
" 该学生成绩已修改完成,是否提交(Y/N)\n" +
"****************************************************************");
for(;;)
{
Scanner sc=new Scanner(System.in);
xx=sc.nextLine();
if(xx.equals("Y")==true)
{
show();
break;
}
else if(xx.equals("N")==true)
{
continue;
}
}
}
}
}
3.主类
package score;
public class Score {
public static void main(String[] args) {
ScoreManagement x;
x=new ScoreManagement();
x.getnum_name();
x.show();
}
}
(三).功能截图
原文地址:https://www.cnblogs.com/zgk666/p/11507477.html