开学java的初步考试
//第一个.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的初步考试的更多相关文章
- 20165235 祁瑛 Java第四周考试总结
20165235 祁瑛 Java第四周考试总结 课后习题p29 p45 代码编写 import java.util.*; class Example2_5{ public static void ma ...
- 2018-03-11 20165235 祁瑛 Java第二周考试总结
20165235 祁瑛 Java第二周考试总结 课后习题p16 代码编写 class Person { void speakHello (){ System.out.print("nin h ...
- Java反射-初步入门
Java反射-初步入门 学反射先了解什么是反射. 百度百科:JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动 ...
- 阿里巴巴Java编程规范考试
阿里巴巴Java编程规范考试 今天在阿里云官网把阿里巴巴Java编程规范认证考试考过了, 写下这篇文章总结一下考试中需要注意的知识点, 主体内容还是要直接看规范: 编程规约 异常日志 单元测试 安全规 ...
- JAVA SE 803 考试前突击
考试的宗旨仍然是掌握基础知识,不过鉴于Oracle的这个认证考试还有不少的大家来找茬的成份在,所以一定一定要细心为上. 关于抽象类的坑点集合: 抽象类不是必须得有抽象方法,但有抽象方法的类必须是抽 ...
- 接口自动化:HttpClient + TestNG + Java(三) - 初步封装和testng断言
在上一篇中,我们写了第一个get请求的测试类,这一篇我们来对他进行初步优化和封装 3.1 分离请求发送类 首先想到的问题是,以后我们的接口自动化测试框架会大量用到发送http请求的功能. 那么这一部分 ...
- 关于部门后端所有转向java前初步设想
Java服务有些什么形式?眼下来看主要是下面几类: 1. 执行在Web应用server的Servlet 2. Thrift.PB.Avro等相似框架写的java服务 3. WebService( ...
- 开学JAVA第一次测试
定义 ScoreInformation 类,其中包括七个私有变量(stunumber,name, mathematicsscore, englishiscore,networkscore, datab ...
- Java——单例模式初步
1.7 单例模式初步 好书推荐:java与模式 1.7.1 什么是设计模式 设计模式是在大量的实践中总结和理论化之后优选的代码结构.编程风格.以及解决问题的思考方式.设计模式就像是经典的棋谱,不同的棋 ...
随机推荐
- JAVAEE学习day06,面向对象
1.面向对象与面向过程思想 什么时面向过程: 面向过程的每一个步骤和过程,把每一个步骤和过程完成,然后又这些功能相互调用,完成需求 强调的时过程,所有的事情都需要自己完成 什么时面向过程: 面向对象思 ...
- element中的树形组件,如何获取父级菜单的id
一般多选的树形组件,使用getCheckedNodes()方法只能获取到本级的菜单id,只有在子菜单全部选中的情况下才会选中上级.但我们想要不全选中子级的情况下也要获取它的上级,甚至上上级等,怎么办呢 ...
- frida(hook工具)的环境搭建
一.简介 frida 是一款基于 python+javascript 的 hook 框架,可运行在 android.ios.linux.win等各个平台,主要使用的动态二进制插桩技术. Frida官网 ...
- 服务发现组件之 — Eureka
前言 现在流行的微服务体系结构正在改变我们构建应用程序的方式,从单一的单体服务转变为越来越小的可单独部署的服务(称为微服务),共同构成了我们的应用程序.当进行一个业务时不可避免就会存在多个服务之间调用 ...
- php7连接mysql8
最近因为剁手买了mac所以在mac上搭建lnmp环境. 刚好看到mysql从5.7跳到8,性能据说快上一倍,果断尝鲜! lnmp基本都弄好了,但是到用php连接Mysql这一步出了岔子. 出错原因: ...
- sklearn概述
Simple and efficient tools for predictive data analysis Accessible to everybody, and reusable in var ...
- this.current = params.page || 1 (前提是params对象一定要存在)
this.current = params.page || 1 (前提是params对象一定要存在)
- webStorm ctrl+L 跳转到指定行line eclipes快捷键
webStorm ctrl+L 跳转到指定行line eclipes快捷键
- ES6 第七节 ES6中新增的数组知识(1)
目录 ES6 第七节 ES6中新增的数组知识(1) 第七节 ES6中新增的数组知识(1) JSON数组格式转换 Array.of()方法: find()实例方法: ES6 第七节 ES6中新增的数组知 ...
- oracle中表空间管理,游标
一.表空间 oracle使用表空间来管理数据库的对象(表,序列,过程,函数,游标等). oracle的逻辑结构(看不见的):oracle数据库 => 表空间 => 表 序列 过程等对象. ...