1 package javatestywh;
2
3 public class ScoreInformation
4 {
5 private String stunumber;
6 private String name;
7 private double mathematicsscore=4;
8 private double englishscore=3;
9 private double networkscore=4;
10 private double databasescore=3;
11 private double softwarescore=2;
12 public ScoreInformation()
13 {
14 super();
15
16 }
17 public ScoreInformation(String stunumber, String name, double mathematicsscore, double englishscore,
18 double networkscore, double databasescore, double softwarescore)
19 {
20 super();
21 this.stunumber = stunumber;
22 this.name = name;
23 this.mathematicsscore = mathematicsscore;
24 this.englishscore = englishscore;
25 this.networkscore = networkscore;
26 this.databasescore = databasescore;
27 this.softwarescore = softwarescore;
28 }
29 public String getStunumber()
30 {
31 return stunumber;
32 }
33 public void setStunumber(String stunumber)
34 {
35 this.stunumber = stunumber;
36 }
37 public String getName()
38 {
39 return name;
40 }
41 public void setName(String name)
42 {
43 this.name = name;
44 }
45 public double getMathematicsscore()
46 {
47 return mathematicsscore;
48 }
49 public void setMathematicsscore(double mathematicsscore)
50 {
51 this.mathematicsscore = mathematicsscore;
52 }
53 public double getEnglishscore()
54 {
55 return englishscore;
56 }
57 public void setEnglishscore(double englishscore)
58 {
59 this.englishscore = englishscore;
60 }
61 public double getNetworkscore()
62 {
63 return networkscore;
64 }
65 public void setNetworkscore(double networkscore)
66 {
67 this.networkscore = networkscore;
68 }
69 public double getDatabasescore()
70 {
71 return databasescore;
72 }
73 public void setDatabasescore(double databasescore)
74 {
75 this.databasescore = databasescore;
76 }
77 public double getSoftwarescore()
78 {
79 return softwarescore;
80 }
81 public void setSoftwarescore(double softwarescore)
82 {
83 this.softwarescore = softwarescore;
84 }
85 @Override
86 public String toString()
87 {
88 return "学号" + stunumber + ", 姓名=" + name + ", 数学=" + mathematicsscore
89 + ", 英语=" + englishscore + ", 网络=" + networkscore + ", 数据库="
90 + databasescore + ", 软件=" + softwarescore ;
91 }
92
93
94
95
96 }
97 package javatestywh;
98
99 import java.util.Scanner;
100
101 public class scoreManagement
102 {
103 public static void main(String[] args)
104 {
105 Scanner sc = new Scanner(System.in);
106 // 定义数组预存五个学生的姓名以及学号;
107 ScoreInformation[] stu = new ScoreInformation[5];
108 stu[0] = new ScoreInformation("20183606", "yanwenhui", 4, 3, 4, 3, 2);
109 stu[1] = new ScoreInformation("20183610", "fengfeng", 4, 3, 4, 3, 2);
110 stu[2] = new ScoreInformation("20183607", "heihei", 4, 3, 4, 3, 2);
111 stu[3] = new ScoreInformation("20183608", "fengshun", 4, 3, 4, 3, 2);
112 stu[4] = new ScoreInformation("20183609", "beauty", 4, 3, 4, 3, 2);
113 mainshow(stu);
114 }
115
116 // 主界面
117 public static void mainshow(ScoreInformation[] stu)
118 {
119 System.out.print("***********************************************************\r\n" + "石家庄铁道大学软件工程系\r\n"
120 + "学生学籍管理系统 2019 版\r\n" + "***********************************************************\r\n"
121 + "1、 学生考试成绩录入\r\n" + "2、 学生考试成绩修改\r\n" + "3、 计算学生成绩绩点\r\n" + "4、退出学籍管理系统\r\n"
122 + "**********************************************************");
123 Scanner sc = new Scanner(System.in);// 输入选项
124 int number = sc.nextInt();
125 switch (number)
126 {
127 case 1:
128 getgrade(stu);
129 break;
130 case 2:
131 change(stu);
132 break;
133 case 3:
134 calculate(stu);
135 break;
136 case 4:
137 exited();
138 break;
139 case 5:
140 showgrade(stu);
141 break;
142 default:
143 {
144 System.out.println("信息错误,该选项不存在");
145 mainshow(stu);
146 break;
147 }
148
149 }
150
151
152 }
153
154 public static void getgrade(ScoreInformation[] stu)
155 {
156 Scanner sc = new Scanner(System.in);
157 System.out.print(
158 "***********************************************************\r\n" + "石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n"
159 + "学生考试成绩录入\r\n" + "***********************************************************\r\n"
160 + "请输入学生学号:XXXXXXXX\r\n" + "**********************************************************");
161 String number = sc.nextLine();
162 int flag = 0;
163 for (int i = 0; i < 5; i++)
164 {
165 if (stu[i].getStunumber().equals(number))
166 {
167 System.out.print("***********************************************************\r\n"
168 + "std软件工程系学生学籍管理系统 2019 版\r\n" + "学生考试成绩录入界面\r\n"
169 + "***********************************************************\r\n" + "学生学号:"
170 + stu[i].getStunumber() + "\r\n" + "学生姓名:" + stu[i].getName() + "\r\n" + "请输入高等数学成绩:XXX\r\n"
171 + "**********************************************************");
172 double math = sc.nextDouble();
173 System.out.println(stu[i].getName() + "的高数成绩是:" + math);
174 System.out.println("请输入该生的英语成绩");
175 double english = sc.nextDouble();
176 System.out.println(stu[i].getName() + "的英语成绩是:" + english);
177 System.out.println("请输入该生的网络成绩");
178 double network = sc.nextDouble();
179 System.out.println(stu[i].getName() + "的网络成绩是:" + network);
180 System.out.println("请输入该生的数据库成绩");
181 double data = sc.nextDouble();
182 System.out.println(stu[i].getName() + "的网络成绩是:" + data);
183 System.out.println("请输入该生的软件成绩");
184 double soft = sc.nextDouble();
185 System.out.print("***********************************************************\r\n"
186 + "std软件工程系学生学籍管理系统 2019 版\r\n" + "学生考试成绩录入\r\n"
187 + "***********************************************************\r\n" + "学生学号:"
188 + stu[i].getStunumber() + "\r\n" + "学生姓名:" + stu[i].getName() + "\r\n" + "高等数学成绩:" + math
189 + "\r\n" + "大学英语成绩:" + english + "\r\n" + "计算机网络成绩:" + network + "\r\n" + "数据库成绩:" + data
190 + "\r\n" + "软件工程成绩:" + soft + "\r\n" + "该学生成绩已录入完毕,是否提交(Y/N)\r\n"
191 + "**********************************************************");
192
193 if (sc.next().equals("Y"))
194 {
195 stu[i].setEnglishscore(english);
196 stu[i].setMathematicsscore(math);
197 stu[i].setDatabasescore(data);
198 stu[i].setNetworkscore(network);
199 stu[i].setSoftwarescore(soft);
200 mainshow(stu);
201 } else
202 {
203 System.out.println("返回录入");
204 getgrade(stu);
205 }
206
207 flag = 1;
208 }
209 }
210 // 如果没有该学生信息,提示重新输入;
211 if (flag == 0)
212 {
213 System.out.println("该学号不存在,请重新输入");
214 getgrade(stu);
215 }
216
217 }
218
219 public static void change(ScoreInformation[] stu)
220 {
221 Scanner sc = new Scanner(System.in);
222
223 System.out.print(
224 "***********************************************************\r\n" + "std软件工程系学生学籍管理系统 2019 版\r\n"
225 + "学生考试成绩修改界面\r\n" + "***********************************************************\r\n"
226 + "请输入学生学号:XXXXXXXX\r\n" + "**********************************************************");
227 String number = sc.nextLine();
228 int flag = 0;
229 for (int i = 0; i < 5; i++)
230 {
231 if (stu[i].getStunumber().equals(number))
232 {
233 System.out.print("***********************************************************\r\n"
234 + "std软件工程系学生学籍管理系统 2019 版\r\n" + "学生考试成绩录入\r\n"
235 + "***********************************************************\r\n" + "学生学号:"
236 + stu[i].getStunumber() + "\r\n" + "学生姓名:" + stu[i].getName() + "\r\n" + "1、高等数学成绩:"
237 + stu[i].getMathematicsscore() + "\r\n" + "2、大学英语成绩:" + stu[i].getEnglishscore() + "\r\n"
238 + "3、计算机网络成绩:" + stu[i].getNetworkscore() + "\r\n" + "4、数据库成绩:" + stu[i].getDatabasescore()
239 + "\r\n" + "5、软件工程成绩:" + stu[i].getSoftwarescore() + "\r\n"
240 +"请输入要修改的选项"+"\r\n"
241 + "**********************************************************");
242 int select = sc.nextInt();
243 double changed;
244 switch (select)
245 {
246 case 1:
247 System.out.print("学生考试成绩录入界面\r\n" +
248 "***********************************************************\r\n" +
249 "学生学号:"+stu[i].getStunumber()+"\r\n" +
250 "学生姓名:"+stu[i].getName()+"\r\n" +
251 "请输入修改后高数成绩:XXX\r\n" +
252 "**********************************************************");
253 changed=sc.nextDouble();
254 System.out.print("***********************************************************\r\n"
255 + "std软件工程系学生学籍管理系统 2019 版\r\n" + "学生考试成绩录入\r\n"
256 + "***********************************************************\r\n" + "学生学号:"
257 + stu[i].getStunumber() + "\r\n" + "学生姓名:" + stu[i].getName() + "\r\n" + "1、高等数学成绩:"
258 + changed + "\r\n" + "2、大学英语成绩:" + stu[i].getEnglishscore() + "\r\n"
259 + "3、计算机网络成绩:" + stu[i].getNetworkscore() + "\r\n" + "4、数据库成绩:" + stu[i].getDatabasescore()
260 + "\r\n" + "5、软件工程成绩:" + stu[i].getSoftwarescore() + "\r\n"
261 +"该学生成绩已修改完毕,是否提交(Y/N)"+"\r\n"
262 + "**********************************************************");
263 if(sc.next().equals("Y")) {
264 stu[i].setMathematicsscore(changed);
265 mainshow(stu);
266 }
267 else {
268 change(stu);
269 }
270 break;
271 case 2:
272 System.out.print("学生考试成绩录入界面\r\n" +
273 "***********************************************************\r\n" +
274 "学生学号:"+stu[i].getStunumber()+"\r\n" +
275 "学生姓名:"+stu[i].getName()+"\r\n" +
276 "请输入修改后成绩:英语\r\n" +
277 "**********************************************************");
278 changed=sc.nextDouble();
279 System.out.print("***********************************************************\r\n"
280 + "std软件工程系学生学籍管理系统 2019 版\r\n" + "学生考试成绩录入\r\n"
281 + "***********************************************************\r\n" + "学生学号:"
282 + stu[i].getStunumber() + "\r\n" + "学生姓名:" + stu[i].getName() + "\r\n" + "1、高等数学成绩:"
283 + stu[i].getMathematicsscore() + "\r\n" + "2、大学英语成绩:" + changed + "\r\n"
284 + "3、计算机网络成绩:" + stu[i].getNetworkscore() + "\r\n" + "4、数据库成绩:" + stu[i].getDatabasescore()
285 + "\r\n" + "5、软件工程成绩:" + stu[i].getSoftwarescore() + "\r\n"
286 +"该学生成绩已修改完毕,是否提交(Y/N)"+"\r\n"
287 + "**********************************************************");
288 if(sc.next().equals("Y")) {
289 stu[i].setEnglishscore(changed);
290 mainshow(stu);
291 }
292 else {
293 change(stu);
294 }
295 break;
296 case 3:
297 System.out.print("学生考试成绩录入界面\r\n" +
298 "***********************************************************\r\n" +
299 "学生学号:"+stu[i].getStunumber()+"\r\n" +
300 "学生姓名:"+stu[i].getName()+"\r\n" +
301 "请输入修改后网络成绩:\r\n" +
302 "**********************************************************");
303 changed=sc.nextDouble();
304 System.out.print("***********************************************************\r\n"
305 + "std软件工程系学生学籍管理系统 2019 版\r\n" + "学生考试成绩录入\r\n"
306 + "***********************************************************\r\n" + "学生学号:"
307 + stu[i].getStunumber() + "\r\n" + "学生姓名:" + stu[i].getName() + "\r\n" + "1、高等数学成绩:"
308 + stu[i].getMathematicsscore() + "\r\n" + "2、大学英语成绩:" + stu[i].getEnglishscore() + "\r\n"
309 + "3、计算机网络成绩:" + changed + "\r\n" + "4、数据库成绩:" + stu[i].getDatabasescore()
310 + "\r\n" + "5、软件工程成绩:" + stu[i].getSoftwarescore() + "\r\n"
311 +"该学生成绩已修改完毕,是否提交(Y/N)"+"\r\n"
312 + "**********************************************************");
313 if(sc.next().equals("Y")) {
314 stu[i].setNetworkscore(changed);
315 mainshow(stu);
316 }
317 else {
318 change(stu);
319 }
320 break;
321 case 4:
322 System.out.print("学生考试成绩录入界面\r\n" +
323 "***********************************************************\r\n" +
324 "学生学号:"+stu[i].getStunumber()+"\r\n" +
325 "学生姓名:"+stu[i].getName()+"\r\n" +
326 "请输入修改后数据库成绩:XXX\r\n" +
327 "**********************************************************");
328 changed=sc.nextDouble();
329 System.out.print("***********************************************************\r\n"
330 + "std软件工程系学生学籍管理系统 2019 版\r\n" + "学生考试成绩录入\r\n"
331 + "***********************************************************\r\n" + "学生学号:"
332 + stu[i].getStunumber() + "\r\n" + "学生姓名:" + stu[i].getName() + "\r\n" + "1、高等数学成绩:"
333 + stu[i].getMathematicsscore() + "\r\n" + "2、大学英语成绩:" + stu[i].getEnglishscore() + "\r\n"
334 + "3、计算机网络成绩:" + stu[i].getNetworkscore() + "\r\n" + "4、数据库成绩:" + changed
335 + "\r\n" + "5、软件工程成绩:" + stu[i].getSoftwarescore() + "\r\n"
336 +"该学生成绩已修改完毕,是否提交(Y/N)"+"\r\n"
337 + "**********************************************************");
338 if(sc.next().equals("Y")) {
339 stu[i].setDatabasescore(changed);
340 mainshow(stu);
341 }
342 else {
343 change(stu);
344 }
345 break;
346 case 5:
347 System.out.print("学生考试成绩录入界面\r\n" +
348 "***********************************************************\r\n" +
349 "学生学号:"+stu[i].getStunumber()+"\r\n" +
350 "学生姓名:"+stu[i].getName()+"\r\n" +
351 "请输入修改后软件成绩:XXX\r\n" +
352 "**********************************************************");
353 changed=sc.nextDouble();
354 System.out.print("***********************************************************\r\n"
355 + "std软件工程系学生学籍管理系统 2019 版\r\n" + "学生考试成绩录入\r\n"
356 + "***********************************************************\r\n" + "学生学号:"
357 + stu[i].getStunumber() + "\r\n" + "学生姓名:" + stu[i].getName() + "\r\n" + "1、高等数学成绩:"
358 + stu[i].getMathematicsscore() + "\r\n" + "2、大学英语成绩:" + stu[i].getEnglishscore() + "\r\n"
359 + "3、计算机网络成绩:" + stu[i].getNetworkscore() + "\r\n" + "4、数据库成绩:" + stu[i].getDatabasescore()
360 + "\r\n" + "5、软件工程成绩:" + changed + "\r\n"
361 +"该学生成绩已修改完毕,是否提交(Y/N)"+"\r\n"
362 + "**********************************************************");
363 if(sc.next().equals("Y")) {
364 stu[i].setSoftwarescore(changed);
365 mainshow(stu);
366 }
367 else {
368 change(stu);
369 }
370 break;
371 default:
372 System.out.println("请选择正确信息输入");
373 change(stu);
374 break;
375
376 }
377
378
379 flag = 1;
380 }
381
382 }
383 if (flag == 0)
384 {
385 System.out.println("学号输入错误,请重新输入学号");
386 change(stu);
387 }
388
389 }
390
391 public static void calculate(ScoreInformation[] stu)
392
393 {
394 Scanner sc=new Scanner(System.in);
395 System.out.print("***********************************************************\r\n" +
396 "std软件工程系学生学籍管理系统 2019 版\r\n" +
397 "学生考试成绩绩点计算界面\r\n" +
398 "***********************************************************\r\n" +
399 "请输入学生学号:XXXXXXXX\r\n" +
400 "**********************************************************");
401 String number = sc.nextLine();
402 float math;
403 float english;
404 float net;
405 float data;
406 float soft;
407 int flag = 0;
408 for (int i = 0; i < 5; i++)
409 {
410 if (stu[i].getStunumber().equals(number))
411 {
412 double pingjun;
413 pingjun=(judge(stu[i].getMathematicsscore())*4+judge(stu[i].getEnglishscore())*3+
414 judge(stu[i].getNetworkscore())*4+judge(stu[i].getDatabasescore())*3+judge(stu[i].getSoftwarescore())*2)
415 /16;
416 System.out.print("学生学号:"+stu[i].getStunumber()+"\r\n" +
417 "学生姓名:"+stu[i].getName()+"\r\n" +
418 "1、高等数学成绩绩点:"+judge(stu[i].getMathematicsscore())+"\r\n" +
419 "2、大学英语成绩绩点:"+judge(stu[i].getEnglishscore())+"\r\n" +
420 "3、计算机网络成绩绩点:"+judge(stu[i].getNetworkscore())+"\r\n" +
421 "4、数据库成绩绩点:"+judge(stu[i].getDatabasescore())+"\r\n" +
422 "5、软件工程成绩绩点:"+judge(stu[i].getSoftwarescore())+"\r\n" );
423 System.out.println("你的平均学分绩点为:"+String.format("%.2f", pingjun)+"\r\n" );
424 if(pingjun>=2) {
425 System.out.println("提示信息:您的学分绩点已达到毕业要求");
426 System.out.println("是否返回主界面:Y/N");
427 if(sc.next().equals("Y")) {
428 mainshow(stu);
429 }
430 }
431 else {
432 System.out.println("提示信息:您的学分绩点未达到毕业要求");
433 System.out.println("是否返回主界面:Y/N");
434 if(sc.next().equals("Y")) {
435 mainshow(stu);
436 }
437 }
438
439 flag=1;
440 }
441 }
442 if(flag==0) {
443 System.out.println("输入信息错误,请重新输入");
444 mainshow(stu);
445 }
446 }
447
448 public static void exited()
449
450 {
451 System.out.print("***********************************************************\r\n" +
452 "谢谢使用石家庄铁道大学软件工程系学生学籍管理系统 2019 版\r\n" +
453 "制作人:yanwenhui\r\n" +
454 "***********************************************************");
455
456 }
457 public static void showgrade(ScoreInformation [] stu) {
458 for(int i=0;i<stu.length;i++) {
459 System.out.println(stu[i]);
460 }
461 mainshow(stu);
462
463 }
464
465 public static double judge(double x) {
466 double t=0;
467 if(x>=90) t=4;
468 else if(x>=85&&x<=89.9) t=3.7;
469 else if(x>=82&&x<=84.9) t=3.3;
470 else if(x>=78&&x<=81.9) t=3.0;
471 else if(x>=75&&x<=77.9) t=2.3;
472 else if(x>=72&&x<=74.9) t=2.3;
473 else if(x>=68&&x<=71.9) t=2.0;
474 else if(x>=66&&x<=67.9) t=1.7;
475 else if(x>=64&&x<=65.9) t=1.5;
476 else if(x>=60&&x<=63.9) t=1.0;
477 else t=0;
478
479 return t;
480 }
481 }
![]()
![]()
![]()
心得:第一次完成的一个系统,哈哈哈;