JAVA测验—学生学籍管理系统

设计思路:

创建基本的ScoreInfoemation类,创建基本的数据成员以及基本的设置方法、获取数据方法以及有无参的构造方法。

 1 package Test;
 2
 3 import java.util.*;
 4
 5 public class ScoreInformation {
 6
 7     private String stunumber;
 8     private String name;
 9     private double  mathematicsscore;
10     private double englishisscore;
11     private double networkscore;
12     private double databasescore;
13     private double softwarescore;
14     public void setStunumber(String stu)
15     {
16         this.stunumber=stu;
17     }
18     String getStunumber()
19     {
20         return this.stunumber;
21     }
22     void setName(String name)
23     {
24         this.name=name;
25     }
26     String getName()
27     {
28         return this.name;
29     }
30     void setMathematicsscore(double math)
31     {
32         this.mathematicsscore=math;
33     }
34     double getMathematicsscore()
35     {
36         return this.mathematicsscore;
37     }
38     void setEnglishisscore(double english)
39     {
40         this.englishisscore=english;
41     }
42     double getEnglishisscore()
43     {
44         return this.englishisscore;
45     }
46     void setNetworkscore(double net)
47     {
48         this.networkscore=net;
49     }
50     double getNetworkscore()
51     {
52         return this.networkscore;
53     }
54     void setDatebasescore(double data)
55     {
56         this.databasescore=data;
57     }
58     double getDatabasescore()
59     {
60         return this.databasescore;
61     }
62     void setSoftwarescore(double soft)
63     {
64         this.softwarescore=soft;
65     }
66     double getSoftwarescore()
67     {
68         return this.softwarescore;
69     }
70     public ScoreInformation(String stu,String name,double math,double english,double network,double data,double soft)
71     {
72         // TODO Auto-generated constructor stub
73         this.stunumber=stu;
74         this.name=name;
75         this.mathematicsscore=math;
76         this.englishisscore=english;
77         this.networkscore=network;
78         this.databasescore=data;
79         this.softwarescore=soft;
80     }
81     ScoreInformation()
82     {
83         this.stunumber=null;
84         this.name=null;
85         this.mathematicsscore=0;
86         this.englishisscore=0;
87         this.networkscore=0;
88         this.databasescore=0;
89         this.softwarescore=0;
90     }
91
92 }

再创建一个管理类ScoreManagement,并在类里创建实现各功能的函数,以ScoreInformation类的对象并初始化。

  1 package Test;
  2
  3 import java.util.*;
  4
  5 public class ScoreManagement {
  6     Scanner in=new Scanner(System.in);
  7     ScoreInformation stu[]=new ScoreInformation[5];
  8     static boolean key=true;                                //设置静态变量用于退出程序
  9     String strChinese[]= {"请输入","学生学号:","学生姓名:","高等数学成绩:","大学英语成绩:","计算机网络成绩:","数据库成绩:","软件工程成绩:"};
 10     public ScoreManagement() {                              //构造五个初始化数据
 11         // TODO Auto-generated constructor stub
 12         stu[0]=new ScoreInformation("20183691","李浩",100,90,90,100,98);
 13         stu[1]=new ScoreInformation("20181000","诸葛钢铁",98,90,90,89,98);
 14         stu[2]=new ScoreInformation("20181001","小沈阳",78,90,90,89,98);
 15         stu[3]=new ScoreInformation("20181002","赵四",56,90,90,20,98);
 16         stu[4]=new ScoreInformation("20181003","刘能",76,90,90,45,98);
 17     }
 18     void setScore()                                            //实现学生成绩录入功能
 19     {
 20         String tempStr=null;
 21         String tempkey=null;
 22         double a[]=new double[5];
 23         do
 24         {
 25             System.out.println("***********************************************************");
 26             System.out.println("石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
 27             System.out.println("学生考试成绩录入");
 28             System.out.println("***********************************************************");
 29             System.out.println("请输入学生学号:XXXXXXXX");
 30             System.out.println("***********************************************************");
 31             tempStr=in.next();
 32             for(int i=0;i<5;i++)
 33             {
 34                 if(tempStr.equals(stu[i].getStunumber()))
 35                 {
 36                     for(int j=1;j<=5;j++)
 37                     {
 38                         System.out.println("***********************************************************");
 39                         System.out.println("石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
 40                         System.out.println("学生考试成绩录入");
 41                         System.out.println("***********************************************************");
 42                         System.out.println("学生学号:"+stu[i].getStunumber());
 43                         System.out.println("学生姓名:"+stu[i].getName());
 44                         System.out.println(strChinese[0]+strChinese[j+2]+"XXX");
 45                         System.out.println("***********************************************************");
 46                         a[j-1]=in.nextDouble();
 47                         if(j==5)
 48                         {
 49                             System.out.println("***********************************************************");
 50                             System.out.println("石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
 51                             System.out.println("学生考试成绩录入");
 52                             System.out.println("***********************************************************");
 53                             System.out.println("学生学号:"+stu[i].getStunumber());
 54                             System.out.println("学生姓名:"+stu[i].getName());
 55                             for(int k=3;k<8;k++)
 56                                 System.out.println(strChinese[k]+a[k-3]);
 57                             System.out.println("该学生成绩已录入完毕,是否提交(Y/N)");
 58                             System.out.println("***********************************************************");
 59                             tempkey=in.next();
 60                             if(tempkey.equals("Y"))
 61                                 stu[i]=new ScoreInformation(stu[i].getStunumber(),stu[i].getName(),a[0],a[1],a[2],a[3],a[4]);    //用构造方法给对象赋值
 62                         }
 63                     }
 64                     break;
 65                 }
 66                 if(i==4)
 67                     {
 68                         tempkey="N";
 69                         System.out.println("********该学号不存在********");
 70                     }
 71             }
 72         }while(tempkey.equals("N"));
 73     }
 74     void updataScore()                                                        //学生成绩更新功能
 75     {
 76         String tempStr=null;
 77         String tempkey=null;
 78         int tempselect;
 79         do
 80         {
 81             System.out.println("***********************************************************");
 82             System.out.println("石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
 83             System.out.println("学生考试成绩修改");
 84             System.out.println("***********************************************************");
 85             System.out.println("请输入学生学号:XXXXXXXX");
 86             System.out.println("***********************************************************");
 87             tempStr=in.next();
 88             for(int i=0;i<5;i++)
 89             {
 90                 if(tempStr.equals(stu[i].getStunumber()))
 91                 {
 92                     double []a= {stu[i].getMathematicsscore(),stu[i].getEnglishisscore(),stu[i].getNetworkscore(),stu[i].getDatabasescore(),stu[i].getSoftwarescore()};
 93                     System.out.println("***********************************************************");
 94                     System.out.println("石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
 95                     System.out.println("学生考试成绩录入");
 96                     System.out.println("***********************************************************");
 97                     System.out.println("学生学号:"+stu[i].getStunumber());
 98                     System.out.println("学生姓名:"+stu[i].getName());
 99                     System.out.println("1、高等数学成绩:"+stu[i].getMathematicsscore());
100                     System.out.println("2、大学英语成绩:"+stu[i].getEnglishisscore());
101                     System.out.println("3、计算机网络成绩:"+stu[i].getNetworkscore());
102                     System.out.println("4、数据库成绩:"+stu[i].getDatabasescore());
103                     System.out.println("5、软件工程成绩:"+stu[i].getSoftwarescore());
104                     System.out.println("***********************************************************");
105                     tempselect=in.nextInt();
106                     System.out.println("***********************************************************");
107                     System.out.println("石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
108                     System.out.println("学生考试成绩录入界面");
109                     System.out.println("***********************************************************");
110                     System.out.println("学生学号:"+stu[i].getStunumber());
111                     System.out.println("学生姓名:"+stu[i].getName());
112                     System.out.println("请输入修改后"+strChinese[tempselect+2]+"XXX");
113                     System.out.println("***********************************************************");
114                     a[tempselect-1]=in.nextDouble();
115                     System.out.println("***********************************************************");
116                     System.out.println("石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
117                     System.out.println("学生考试成绩录入");
118                     System.out.println("***********************************************************");
119                     System.out.println("学生学号:"+stu[i].getStunumber());
120                     System.out.println("学生姓名:"+stu[i].getName());
121                     for(int j=1;j<=5;j++)
122                         System.out.println(j+"、"+strChinese[j+2]+a[j-1]);
123                     System.out.println("该学生成绩已录入完毕,是否提交(Y/N)");
124                     System.out.println("***********************************************************");
125                     tempkey=in.next();
126                     if(tempkey.equals("Y"))
127                     {
128                         stu[i]=new ScoreInformation(stu[i].getStunumber(),stu[i].getName(),a[0],a[1],a[2],a[3],a[4]);
129                     }
130                     break;
131                 }
132                 if(i==4)
133                 {
134                     tempkey="N";
135                     System.out.println("********该学号不存在********");
136                 }
137             }
138         }while(tempkey.equals("N"));
139     }
140     double judgeScore(double score)                               //用于返回学生单科成绩对应的绩点函数
141     {
142         double num=0;
143         if(score<60)
144             num=0;
145         else if(score<64)
146             num=1;
147         else if(score<66)
148             num=1.5;
149         else if(score<68)
150             num=1.7;
151         else if(score<72)
152             num=2;
153         else if(score<75)
154             num=2.3;
155         else if(score<78)
156             num=2.7;
157         else if(score<82)
158             num=3;
159         else if(score<85)
160             num=3.3;
161         else if(score<90)
162             num=3.7;
163         else num=4;
164         return num;
165     }
166     double judgeCerdit(double score,int x)                               //判断单科成绩是否及格,并返回对应学分
167     {
168         double num=0;
169         if(score>=60)
170             switch(x)
171             {
172             case 1:num=4;break;
173             case 2:num=3;break;
174             case 3:num=4;break;
175             case 4:num=3;break;
176             case 5:num=2;
177             }
178         return num;
179     }
180     void countScore()                                                    //用于计算学生绩点并输出的功能
181     {
182         String tempstr=null,tempkey=null;
183         double sum=0;
184         do
185         {
186             System.out.println("***********************************************************");
187             System.out.println("石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
188             System.out.println("学生考试成绩绩点计算界面");
189             System.out.println("***********************************************************");
190             System.out.println("请输入学生学号:XXXXXXXX");
191             System.out.println("***********************************************************");
192             tempstr=in.next();
193             for(int i=0;i<5;i++)
194             {
195                 if(tempstr.equals(stu[i].getStunumber()))
196                 {
197                     double []a= {stu[i].getMathematicsscore(),stu[i].getEnglishisscore(),stu[i].getNetworkscore(),stu[i].getDatabasescore(),stu[i].getSoftwarescore()};
198                     for(int j=0;j<5;j++)
199                         sum+=judgeScore(a[j])*judgeCerdit(a[j],j+1);
200                     System.out.println("***********************************************************");
201                     System.out.println("石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
202                     System.out.println("学生考试成绩绩点计算界面");
203                     System.out.println("***********************************************************");
204                     System.out.println("学生学号:"+stu[i].getStunumber());
205                     System.out.println("学生姓名:"+stu[i].getName());
206                     for(int j=1;j<=5;j++)
207                         System.out.println(j+"、"+strChinese[j+2].substring(0, strChinese[j+2].length()-1)+"绩点:"+judgeScore(a[j-1]));
208                     System.out.println("你的平均学分绩点为:"+(sum/16.0));
209                     System.out.print("提示信息:");
210                     if(sum/16.0>=2)
211                         System.out.println("********你的学分绩点已达到毕业要求!********");
212                     else System.out.println("********你的学分绩点不满足毕业要求!********");
213                     System.out.println("是否返回系统主界面:(Y/N)");
214                     System.out.println("***********************************************************");
215                     tempkey=in.next();
216                     break;
217                 }
218                 if(i==4)
219                 {
220                     tempkey="N";
221                     System.out.println("********该学号不存在********");
222                 }
223             }
224         }while(tempkey.equals("N"));
225     }
226     void exit()                                                                //用于退出程序并输出结尾页
227     {
228         this.key=false;
229         System.out.println("***********************************************************");
230         System.out.println("谢谢使用石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
231         System.out.println("制作人:李浩");
232         System.out.println("***********************************************************");
233     }
234     void windows(ScoreManagement scoreManage)             //将各函数组合构成一个完整的程序
235     {
236         do
237         {
238             System.out.println("***********************************************************");
239             System.out.println("石家庄铁道大学软件工程系");
240             System.out.println("学生学籍管理系统 2019 版");
241             System.out.println("***********************************************************");
242             System.out.println("1、 学生考试成绩录入");
243             System.out.println("2、 学生考试成绩修改");
244             System.out.println("3、 计算学生成绩绩点");
245             System.out.println("4、退出学籍管理系统");
246             System.out.println("***********************************************************");
247             String tempkey;
248             tempkey=in.next();
249             switch(tempkey)
250             {
251             case "1":scoreManage.setScore();break;
252             case "2":scoreManage.updataScore();break;
253             case "3":scoreManage.countScore();break;
254             case "4":scoreManage.exit();break;
255             default:System.out.println("*********该选项不存在*********");
256             }
257         }while(key);
258     }
259
260 }

创建主类,运行程序。

 1 package Test;
 2
 3 public class Main {
 4
 5     public Main() {
 6         // TODO Auto-generated constructor stub
 7     }
 8
 9     public static void main(String[] args) {
10         // TODO Auto-generated method stub
11         ScoreManagement scoreManage=new ScoreManagement();
12         scoreManage.windows(scoreManage);
13     }
14
15 }

运行截图:

学生成绩录入:

原文地址:https://www.cnblogs.com/haheihei/p/11515381.html

时间: 2024-11-07 07:37:18

JAVA测验—学生学籍管理系统的相关文章

JAVA学生学籍管理系统

每天记录学习,每天会有好心情.*^_^* 今天记录的项目是基于JAVA的学生学籍管理系统,基于JAVA的学生学籍管理系统项目是这么回事:电子学籍系统可对学生学籍注册.档案管理.学籍异动.升级.毕业.成长记录实现全程信息化管理.采用当前非常流行的B/S体系结构,以JAVA作为开发技术,主要依赖SSM技术框架,mysql数据库.2013年12月8日,教育部基础教育一司司长王定华在长春出席会议时表示,中小学电子学籍系统将在2013年年底全国联网,2014年正式实现开通,今后中央在一些经费支持方面,将与

Java编写学生成绩管理系统

思路:定义两个类,一个scoreinformation类,一个scoremanagement类,scoreinformation类用于编写姓名,学号,以及各项成绩的输入函数,scoreinformation类有七个私有变量,和各个变量的get(),set()函数,scoremanagement类用于表现各项功能,包括学生信息的引入函数,学生信息的添加函数,学生信息的修改函数,学生成绩绩点的计算函数,以及退出系统的函数,在最后的主函数中,首先调用存储学生信息的函数,然后运用switch,case函

石家庄铁道大学软件工程系学生学籍管理系统2019版

//信1805-1 戴伟伟 20183773package dww; import java.util.Scanner; class ScoreInformation { private String stunumber; private String name; private double mathematicsscore; private double englishscore; private double networkscore; private double databasesco

[C语言练习]学生学籍管理系统

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86

学生学籍管理系统

<span style="color:#ff0000;"> 学生学籍管理系统</span> 这个项目用了一天半的时间就完成了,一开始我没打算用链表来实现的,但是我自学链表也有一段时间了,想看看自己对链表掌握了多少,所以选择了用链表.第一次用链表写了一个系统,难免会有Bug,希望各位程序猿能指点一下..... /********************************************** 学生学籍管理系统 每个学生的信息包括:学号.姓名.性别.三门

学生学籍管理系统_管理员登陆对学生的信息进行操作

MInterface.java package studentManage; import java.awt.*; import java.awt.event.*; import javax.swing.*; /* * 管理员 * 操作界面接口类,可以直接扩展.调用. */ public class MInterface extends JFrame implements ActionListener { static JMenuBar jMenuBar = new JMenuBar();//

学生学籍管理系统_学生登陆系统查询与修改信息

SCx.java package studentManage; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.sql.*; public class SCx extends JFrame implements ActionListener { static SCx s; static JLabel label1 = new JLabel("学号:"); static JText

Java 实现学生信息管理系统

编写一个简单的学生管理信息系统. 在oracle中设计一张学生表,以学号作为关键字. 其他学生信息有:姓名.手机号. 在进入系统时,显示如下菜单: ************************************************** =====欢迎进入学生管理信息系统===== 1. 新增学生 2. 修改学生 3. 删除学生 4. 查询学生 5. 退出系统 请选择(1-5): ************************************************** (

C语言学生学籍管理系统源码,有实验报告噢!

设计一个学生成绩管理系统,对上学期的本班的学习成绩进行管理,具有查询和检索功能,并且能够对指定文件操作,也可将多个文件组成一个文件?. A . ??设计内容 1 .每一条记录包括一个学生的学号.姓名.性别.各门课成绩(上学期的科目).平均成绩. 2 .输入功能:可以一次完成若干条记录的输入. 3 .显示功能:完成全部学生记录的显示. 4 .查找功能:完成按姓名或学号查找学生记录,并显示. 5 .排序功能:按学生平均成绩进行排序. 6 .插入功能:按 学号顺序插入 一条学生记录. 7 .将学生记录