//第一个.java文件
package project1;
//20183777 温学智 信1805-2
public class ScoreInformation
{
private String stunumber;
private String name;
private double mathematicsscore;
private double englishiscore;
private double networkscore;
private double databasescore;
private double 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 String getstunumber()
{return stunumber;}
public void setstunumber(String stunumber)
{this.stunumber=stunumber;}
public String getname()
{return name;}
public void setname(String name)
{this.name=name;}
public double getmathematicsscore()
{return mathematicsscore;}
public void setmathematicsscore(double mathematicsscore)
{this.mathematicsscore=mathematicsscore;}
public double getenglishiscore()
{return englishiscore;}
public void setenglishiscore(double englishiscore)
{this.englishiscore=englishiscore;}
public double getnetworkscore()
{return networkscore;}
public void setnetworkscore(double networkscore)
{this.networkscore=networkscore;}
public double getdatabasescore()
{return databasescore;}
public void setdatabasescore(double databasescore)
{this.databasescore=databasescore;}
public double getsoftwarescore()
{return softwarescore;}
public void setsoftwarescore(double softwarescore)
{this.softwarescore=softwarescore;}
} //第二个.java文件
package project1;
//20183777 温学智 信1805-2
import java.util.Scanner;
import project1.ScoreInformation;
public class ScoreManagement
{
static Scanner scan=new Scanner(System.in);
static ScoreInformation []wen=new ScoreInformation[5];
//进行数组的初始化。写入数据。
static void shuzuchushihua()
{
wen[0]=new ScoreInformation("20183774"," 温学智1",0,0,0,0,0);
wen[1]=new ScoreInformation("20183775"," 温学智2",0,0,0,0,0);
wen[2]=new ScoreInformation("20183776"," 温学智3",0,0,0,0,0);
wen[3]=new ScoreInformation("20183777"," 温学智4",0,0,0,0,0);
wen[4]=new ScoreInformation("20183778"," 温学智5",0,0,0,0,0);
}
static void dayin1()
{
System.out.println("***********************************************");
System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统2019版");
System.out.println(" 学生考试成绩录入");
System.out.println("***********************************************");
}
static void dayin2()
{
System.out.println("***********************************************");
}
static void dayin3()
{
System.out.println("***********************************************");
System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统2019版");
System.out.println(" 学生考试成绩修改界面");
System.out.println("***********************************************");
}
static void dayin4(int w2,double d1,double d2,double d3, double d4,double d5)
{
wen[w2].setmathematicsscore(d1);
wen[w2].setenglishiscore(d2);
wen[w2].setnetworkscore(d3);
wen[w2].setdatabasescore(d4);
wen[w2].setsoftwarescore(d5);
}
static void dayin5(int w2)
{
System.out.println(" 学生学号:"+wen[w2].getstunumber());
System.out.println(" 学生姓名:"+wen[w2].getname());
System.out.println(" 1 高等数学成绩:"+wen[w2].getmathematicsscore());
System.out.println(" 2 英语成绩:"+wen[w2].getenglishiscore());
System.out.println(" 3 计算机网络成绩:"+wen[w2].getnetworkscore());
System.out.println(" 4 数据库成绩:"+wen[w2].getdatabasescore());
System.out.println(" 5 软件工程成绩:"+wen[w2].getsoftwarescore());
}
static void dayin6()
{
System.out.println(" 该学生成绩录入完毕,是否提交(Y/N)");
}
static void dayin7()
{
System.out.println("***********************************************");
System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统2019版");
System.out.println(" 学生考试成绩绩点计算界面");
System.out.println("***********************************************");
}
static double dayin8(double a)
{ if(a>=90)
return 4.0;
else if(a>=85&&a<=89.9)
return 3.7;
else if(a>=82&&a<=84.9)
return 3.3;
else if(a>=78&&a<=81.9)
return 3.0;
else if(a>=75&&a<=77.9)
return 2.7;
else if(a>=72&&a<=74.9)
return 2.3;
else if(a>=68&&a<=71.9)
return 2.0;
else if(a>=66&&a<=67.9)
return 1.7;
else if(a>=64&&a<=65.9)
return 1.5;
else if(a>=60&&a<=63.9)
return 1.0;
else
return 0;
}
static void dayin9(String a,String b)
{
System.out.println(" 学生学号:"+a);
System.out.println(" 学生姓名:"+b);
}
static boolean xue2;
static boolean zhi1;
static boolean ooo;
//进行成绩的录入
static void luru()
{
ooo=true;
while(ooo)
{
xue2=false;
zhi1=true;
dayin1();
System.out.println(" 请输入学生学号:XXXXXXXX");
dayin2();
String w1=scan.next();
int w2=0;
for(;w2<5;w2++)
{
if(w1.equals(wen[w2].getstunumber()))
{
xue2=true;
ooo=false;
break;
}
}
while(zhi1)
{
if(xue2)
{
dayin1();
dayin9(wen[w2].getstunumber(),wen[w2].getname());
System.out.println(" 请输入高等数学成绩:XXX");
dayin2();
System.out.println(" ");
wen[w2].setmathematicsscore(scan.nextDouble());
dayin1();
dayin9(wen[w2].getstunumber(),wen[w2].getname());
System.out.println(" 高等数学成绩:"+wen[w2].getmathematicsscore());
System.out.println(" 请输入大学英语成绩:XXX");
dayin2();
System.out.println(" ");
wen[w2].setenglishiscore(scan.nextDouble());
dayin1();
dayin9(wen[w2].getstunumber(),wen[w2].getname());
System.out.println(" 高等数学成绩:"+wen[w2].getmathematicsscore());
System.out.println(" 高等数学成绩:"+wen[w2].getenglishiscore());
System.out.println(" 请输入大学计算机网络成绩:XXX");
dayin2();
System.out.println(" ");
wen[w2].setnetworkscore(scan.nextDouble());
dayin1();
dayin9(wen[w2].getstunumber(),wen[w2].getname());
System.out.println(" 高等数学成绩:"+wen[w2].getmathematicsscore());
System.out.println(" 高等数学成绩:"+wen[w2].getenglishiscore());
System.out.println(" 计算机网络成绩:"+wen[w2].getnetworkscore());
System.out.println(" 请输入大学数据库成绩:XXX");
dayin2();
System.out.println(" ");
wen[w2].setdatabasescore(scan.nextDouble());
dayin1();
dayin9(wen[w2].getstunumber(),wen[w2].getname());
System.out.println(" 高等数学成绩:"+wen[w2].getmathematicsscore());
System.out.println(" 高等数学成绩:"+wen[w2].getenglishiscore());
System.out.println(" 计算机网络成绩:"+wen[w2].getnetworkscore());
System.out.println(" 数据库成绩:"+wen[w2].getdatabasescore());
System.out.println(" 请输入大学软件工程成绩:XXX");
dayin2();
System.out.println(" ");
wen[w2].setsoftwarescore(scan.nextDouble());
dayin1();
dayin9(wen[w2].getstunumber(),wen[w2].getname());
System.out.println(" 高等数学成绩:"+wen[w2].getmathematicsscore());
System.out.println(" 高等数学成绩:"+wen[w2].getenglishiscore());
System.out.println(" 计算机网络成绩:"+wen[w2].getnetworkscore());
System.out.println(" 数据库成绩:"+wen[w2].getdatabasescore());
System.out.println(" 软件工程成绩:"+wen[w2].getsoftwarescore());
dayin6();
dayin2();
String w3=scan.next();
if(w3.equals("N"))
{
wen[w2].setmathematicsscore(0);
wen[w2].setenglishiscore(0);
wen[w2].setnetworkscore(0);
wen[w2].setdatabasescore(0);
wen[w2].setsoftwarescore(0);
zhi1=false;
ooo=true;
}
else
{
zhi1=false;
System.out.println("成绩录入成功请继续操作");
}
}
else
{
System.out.println("学号错误操作失败");
zhi1=false;
ooo=true;
}
}
zhi1=true;
}
}
static boolean xue3;
static boolean zhi2;
static boolean oo;
static boolean oooo;
//进行成绩的修改
static void xiugai()
{
oooo=true;
while(oooo)
{
zhi2=true;
oo=true;
while(oo)
{
xue3=false;
dayin3();
System.out.println(" 请输入学生学号:XXXXXXXX");
dayin2();
String w4=scan.next();
int w2=0;
for(;w2<5;w2++)
{
if(w4.equals(wen[w2].getstunumber()))
{
xue3=true;
oo=false;
oooo=false;
break;
}
}
while(zhi2)
{
if(xue3)
{
double d1,d2,d3,d4,d5;
d1=wen[w2].getmathematicsscore();
d2=wen[w2].getenglishiscore();
d3=wen[w2].getnetworkscore();
d4=wen[w2].getdatabasescore();
d5=wen[w2].getsoftwarescore();
dayin3();
System.out.println(" 学生学号:"+wen[w2].getstunumber());
System.out.println(" 学生姓名:"+wen[w2].getname());
System.out.println(" 1 高等数学成绩:"+wen[w2].getmathematicsscore());
System.out.println(" 2 英语成绩:"+wen[w2].getenglishiscore());
System.out.println(" 3 计算机网络成绩:"+wen[w2].getnetworkscore());
System.out.println(" 4 数据库成绩:"+wen[w2].getdatabasescore());
System.out.println(" 5 软件工程成绩:"+wen[w2].getsoftwarescore());
dayin2();
System.out.println("请选择需要修改的选项");
int w5=scan.nextInt();
String w6;
switch(w5)
{
case 1:
dayin3();
System.out.println(" 学生学号:"+wen[w2].getstunumber());
System.out.println(" 学生姓名:"+wen[w2].getname());
System.out.println(" 请输入修改后的高等数学成绩:XXX");
dayin2();
wen[w2].setmathematicsscore(scan.nextDouble());
dayin3();
System.out.println(" 学生学号:"+wen[w2].getstunumber());
System.out.println(" 学生姓名:"+wen[w2].getname());
System.out.println(" 高等数学成绩:"+wen[w2].getmathematicsscore());
System.out.println(" 英语成绩:"+wen[w2].getenglishiscore());
System.out.println(" 计算机网络成绩:"+wen[w2].getnetworkscore());
System.out.println(" 数据库成绩:"+wen[w2].getdatabasescore());
System.out.println(" 软件工程成绩:"+wen[w2].getsoftwarescore());
dayin6();
dayin2();
w6=scan.next();
if(w6.equals("N"))
{
dayin4(w2,d1,d2,d3,d4,d5);
zhi2=true;
}
else
zhi2=false;
break;
case 2:
dayin3();
System.out.println(" 学生学号:"+wen[w2].getstunumber());
System.out.println(" 学生姓名:"+wen[w2].getname());
System.out.println(" 请输入修改后的大学英语成绩:XXX");
dayin2();
wen[w2].setenglishiscore(scan.nextDouble());
dayin3();
System.out.println(" 学生学号:"+wen[w2].getstunumber());
System.out.println(" 学生姓名:"+wen[w2].getname());
System.out.println(" 高等数学成绩:"+wen[w2].getmathematicsscore());
System.out.println(" 英语成绩:"+wen[w2].getenglishiscore());
System.out.println(" 计算机网络成绩:"+wen[w2].getnetworkscore());
System.out.println(" 数据库成绩:"+wen[w2].getdatabasescore());
System.out.println(" 软件工程成绩:"+wen[w2].getsoftwarescore());
System.out.println(" 该学生成绩录入完毕,是否提交(Y/N)");
dayin2();
w6=scan.next();
if(w6.equals("N"))
{
dayin4(w2,d1,d2,d3,d4,d5);
zhi2=true;
}
else
zhi2=false;
break;
case 3:
dayin3();
System.out.println(" 学生学号:"+wen[w2].getstunumber());
System.out.println(" 学生姓名:"+wen[w2].getname());
System.out.println(" 请输入修改后的计算机网络成绩:XXX");
dayin2();
wen[w2].setnetworkscore(scan.nextDouble());
dayin3();
System.out.println(" 学生学号:"+wen[w2].getstunumber());
System.out.println(" 学生姓名:"+wen[w2].getname());
System.out.println(" 高等数学成绩:"+wen[w2].getmathematicsscore());
System.out.println(" 英语成绩:"+wen[w2].getenglishiscore());
System.out.println(" 计算机网络成绩:"+wen[w2].getnetworkscore());
System.out.println(" 数据库成绩:"+wen[w2].getdatabasescore());
System.out.println(" 软件工程成绩:"+wen[w2].getsoftwarescore());
dayin6();
dayin2();
w6=scan.next();
if(w6.equals("N"))
{
dayin4(w2,d1,d2,d3,d4,d5);
zhi2=true;
}
else
zhi2=false;
break;
case 4:
dayin3();
System.out.println(" 学生学号:"+wen[w2].getstunumber());
System.out.println(" 学生姓名:"+wen[w2].getname());
System.out.println(" 请输入修改后的数据库成绩:XXX");
dayin2();
wen[w2].setdatabasescore(scan.nextDouble());
dayin3();
System.out.println(" 学生学号:"+wen[w2].getstunumber());
System.out.println(" 学生姓名:"+wen[w2].getname());
System.out.println(" 高等数学成绩:"+wen[w2].getmathematicsscore());
System.out.println(" 英语成绩:"+wen[w2].getenglishiscore());
System.out.println(" 计算机网络成绩:"+wen[w2].getnetworkscore());
System.out.println(" 数据库成绩:"+wen[w2].getdatabasescore());
System.out.println(" 软件工程成绩:"+wen[w2].getsoftwarescore());
dayin6();
dayin2();
w6=scan.next();
if(w6.equals("N"))
{
dayin4(w2,d1,d2,d3,d4,d5);
zhi2=true;
}
else
zhi2=false;
break;
case 5:
dayin3();
System.out.println(" 学生学号:"+wen[w2].getstunumber());
System.out.println(" 学生姓名:"+wen[w2].getname());
System.out.println(" 请输入修改后的软件工程成绩:XXX");
dayin2();
wen[w2].setsoftwarescore(scan.nextDouble());
dayin3();
dayin5(w2);
dayin6();
dayin2();
w6=scan.next();
if(w6.equals("N"))
{
dayin4(w2,d1,d2,d3,d4,d5);
zhi2=true;
}
else
zhi2=false;
break;
default:
System.out.println("数字代码错误返回主菜单");
break;
}
}
else
{
System.out.println("学号输入错误");
zhi2=false;
oooo=true;
}
}
zhi2=true;
}
}
}
//绩点计算
static boolean xue5=true;
static void jidain()
{
dayin7();
System.out.println(" 请输入学生学号:XXXXXXXX");
System.out.println("***********************************************");
String w8=scan.next();
int w2=0;
for(;w2<5;w2++)
{
if(w8.equals(wen[w2].getstunumber()))
{
xue5=true;
break;
}
}
while(xue5)
{
double t1,t2,t3,t4,t5;
t1=dayin8(wen[w2].getmathematicsscore());
t2=dayin8(wen[w2].getenglishiscore());
t3=dayin8(wen[w2].getnetworkscore());
t4=dayin8(wen[w2].getdatabasescore());
t5=dayin8(wen[w2].getnetworkscore());
double tt;
tt=(t1*4+t2*3+t3*4+t4*3+t5*2)/16;
dayin7();
System.out.println(" 学生学号:"+wen[w2].getstunumber());
System.out.println(" 学生姓名:"+wen[w2].getname());
System.out.println(" 高等数学绩点:"+t1);
System.out.println(" 高等数学绩点:"+t2);
System.out.println(" 计算机网络绩点:"+t3);
System.out.println(" 数据库绩点:"+t4);
System.out.println(" 软件工程绩点:"+t5);
System.out.println(" 你的平均绩点绩点:"+String.format("%.2f", tt));
if(((double)Math.round(tt*100)/100)>=2)
System.out.println(" 提示信息:你的学分绩点达到毕业水平");
else
System.out.println(" 提示信息:你的学分绩点没有达到毕业水平");
dayin6();
dayin2();
String we3;
we3=scan.next();
if(we3.equals("N"))
{
xue5=true;
}
else
xue5=false;
}
}
//数字4所代表的的退出程序
static void tuichu()
{
dayin2();
System.out.println(" 谢谢使用石家庄铁道大学软件工程系学生学籍管理系统2019版");
System.out.println(" 制作人:温学智");
dayin2();
}
static boolean xue1;
public static void main(String[] args)
{
shuzuchushihua();//进行数组初始化
xue1=true;
while (xue1)
{ // 主菜单
dayin2();
System.out.println(" 石家庄铁道大学软件工程系");
System.out.println(" 学生学籍管理系统2019版");
dayin2();
System.out.println(" 1.学生考试成绩录入");
System.out.println(" 2.学生考试成绩修改");
System.out.println(" 3.计算学生成绩绩点");
System.out.println(" 4.退出学籍管理系统");
dayin2();
System.out.println("输入想要进行步骤的前面的数字");
int i=scan.nextInt();
switch(i)
{
case 1:
luru();
break;
case 2:
xiugai();
break;
case 3:
jidain();
break;
case 4:
tuichu();//退出系统
xue1=false;
break;
default:
System.out.println("数字代码错误,该选项不存在。请从新输入");
break;
}
}
} }

设计思路:将实验要求中的几个功能。分为几个部分,依次进行操作。并且定义几个函数,对于被多次输出内容的东西进行操作。在四个主部分中进行调用,以方便对其进行操作节省代码行数。应用布尔类型通过while等进行操作,完成相应的功能。主要应用简单的判断语句。在主函数中比较简单知识代用相应的函数就好了。  

遇到的问题:主要是在创建类的数组对象时对其进行初始化的问题。自己的表达方式不正确。还有就是对于数据进行四舍五入并保留两位有效数字时候遇到的问题。最后通过查阅资料翻看书籍得到了自己想要的答案。

自己的感受:体会到了java进行编程的方便性。许多的操作可以进行调用函数来完成相应的步骤操作。对import有了更好的理解。知道了对于编程首先要有好的思维,先对整体的架构进行分析,理清自己的思路。之后再进行编程这才是编辑代码的最重要的做法。思路比制剂上来打代码强多了。每一次打代码都要先理清自己的尔思路,明白怎样操作才能完成自己想要得到的东西。在java中编程要注意英文字母的大小写。学会对代码进行分成部分。这样一旦出现错误容易修改。还有就是不要等到编程完毕在进行调试。也要学会分开进行避免最后乱套。

代码运行结果:

开学java的初步考试的更多相关文章

  1. 20165235 祁瑛 Java第四周考试总结

    20165235 祁瑛 Java第四周考试总结 课后习题p29 p45 代码编写 import java.util.*; class Example2_5{ public static void ma ...

  2. 2018-03-11 20165235 祁瑛 Java第二周考试总结

    20165235 祁瑛 Java第二周考试总结 课后习题p16 代码编写 class Person { void speakHello (){ System.out.print("nin h ...

  3. Java反射-初步入门

    Java反射-初步入门 学反射先了解什么是反射. 百度百科:JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动 ...

  4. 阿里巴巴Java编程规范考试

    阿里巴巴Java编程规范考试 今天在阿里云官网把阿里巴巴Java编程规范认证考试考过了, 写下这篇文章总结一下考试中需要注意的知识点, 主体内容还是要直接看规范: 编程规约 异常日志 单元测试 安全规 ...

  5. JAVA SE 803 考试前突击

    考试的宗旨仍然是掌握基础知识,不过鉴于Oracle的这个认证考试还有不少的大家来找茬的成份在,所以一定一定要细心为上.   关于抽象类的坑点集合: 抽象类不是必须得有抽象方法,但有抽象方法的类必须是抽 ...

  6. 接口自动化:HttpClient + TestNG + Java(三) - 初步封装和testng断言

    在上一篇中,我们写了第一个get请求的测试类,这一篇我们来对他进行初步优化和封装 3.1 分离请求发送类 首先想到的问题是,以后我们的接口自动化测试框架会大量用到发送http请求的功能. 那么这一部分 ...

  7. 关于部门后端所有转向java前初步设想

    Java服务有些什么形式?眼下来看主要是下面几类: 1.  执行在Web应用server的Servlet 2.  Thrift.PB.Avro等相似框架写的java服务 3.  WebService( ...

  8. 开学JAVA第一次测试

    定义 ScoreInformation 类,其中包括七个私有变量(stunumber,name, mathematicsscore, englishiscore,networkscore, datab ...

  9. Java——单例模式初步

    1.7 单例模式初步 好书推荐:java与模式 1.7.1 什么是设计模式 设计模式是在大量的实践中总结和理论化之后优选的代码结构.编程风格.以及解决问题的思考方式.设计模式就像是经典的棋谱,不同的棋 ...

随机推荐

  1. php实现下载功能

    <?php header("Content-type:text/html;charset=utf-8"); $file_name="1.text"; // ...

  2. npm 安装包总结

    1.前端可视化json:vue-json-viewer; 2.富文本编辑: vue-quill-editor;    https://www.cnblogs.com/ZaraNet/p/1020922 ...

  3. ssh 公钥 下载选择的时候 下拉选择 ssh 然后 git clone

    ssh 公钥 下载选择的时候 下拉选择 ssh 然后 git clone

  4. 微信小程序开发(一)开发准备

    微信小程序开发(一)开发准备 微信小程序,近几年,越来越火,应用场景越来越多,好大学习起来,比较容易,学习曲线平缓,你要是会前端开发,那简直可以用易如反掌来形容. 小程序,开发工具官方也提供了,他兼容 ...

  5. oracle中plsql练习-----在控制台输出1到100以内的素数。

    一.思路:首先需要知道素数的概念即质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数. 中心思想是,外循环所有的自然数,内循环折半查询,增加代码的速度,注意:从1开始,需要大于1,但是pl ...

  6. CVE-2018-1000861复现

    1. 漏洞描述 Jenkins使用Stapler框架开发,其允许用户通过URL PATH来调用一次public方法.由于这个过程没有做限制,攻击者可以构造一些特殊的PATH来执行一些敏感的Java方法 ...

  7. 记录一次线上bug

    记录一次线上bug,总的来说就是弱网和重复点击.特殊值校验的问题. 测试场景一:        在3g网络或者使页面加载速度需要两秒左右的时候,输入学号,提交学生的缴费项目,提交完一个 学生的缴费后, ...

  8. 图论-BFS-最小高度的树 Minimum Height Trees

    2018-09-24 12:01:38 问题描述: 对于一个具有树特征的无向图,我们可选择任何一个节点作为根.图因此可以成为树,在所有可能的树中,具有最小高度的树被称为最小高度树.给出这样的一个图,写 ...

  9. IDEA 快捷键大全及常用插件

    IDEA快捷键操作 颜色主题插件: **Material Theme UI Plugin ** 快捷键提醒: **Key Promoter X ** 查找Bug: QAPlig-FindBugs 热部 ...

  10. JMX(Java Management Extension)学习

    目录 基本概念 MBean的种类 StandardMBean DynamicBean ModelMBean JMX的实现方式 StandardMBean的使用方法 JMX服务的访问方式 JMX--No ...