studentmanagement
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 }
心得:第一次完成的一个系统,哈哈哈;