zoukankan      html  css  js  c++  java
  • Java学生成绩绩点管理系统

    一、考试要求:
    1、按照测试内容要求完成程序的设计与编程;
    2、建立学号姓名文件夹,如:“信 1805-1 班 20180001 XXX”,将源程序文件保存在文件夹中,压缩成 rar 文件提交。
    3、以班级为单位上交最终考试结果。
    4、需要在程序开始的注释中注明班级、学号、姓名。
    二、数据结构要求:(5 分)
    1、定义 ScoreInformation 类,其中包括七个私有变量(stunumber,name, mathematicsscore, englishiscore,networkscore, databasescore,softwarescore)。
    各成员的含义如下:
    变量 stunumber 为字符串类型 String,用于存储学生的学号(有 8 位数字组成)。
    变量 name 为字符串类型 String,用于存储学生的姓名。
    变量 mathematicsscore 为 double 类型,用于存储学生的高等数学成绩,高等数学的学分为 4 分。
    变量 englishiscore 为 double 类型,用于存储学生的大学英语成绩,大学英语的学分为 3 分。
    变量 networkscore 为 double 类型,用于存储学生的计算机网络成绩,计算机网络的学分为 4 分。
    变量 databasescore 为 double 类型,用于存储学生的数据库成绩,数据库的学分为 3 分。
    变量 softwarescore 为 double 类型,用于存储学生的软件工程成绩,软件工程的学分为 2 分。
    对每个变量定义 get()(读取变量信息)和 set()(设置变量信息)的方法。
    2 、 赋 初 值 方 法 包 括 七 个 参 数 , 用 于 为 变 量 (stunumber ,name, mathematicsscore, englishiscore,networkscore, databasescore,softwarescore)赋值。
    三、功能要求:(10 分)
    该系统完成学生成绩录入,修改,计算学分积点和查询学生成绩的简单功能,定义 ScoreManagement 类完成下列功能。
    1、利用数组实现至少存储五个学生的信息; (将考生信息作为第一条记录)。(1 分)
    2、学生成绩管理系统的主界面如下图所示:(1 分)
    ①界面要求;(0.5 分)
    ***********************************************************
    石家庄铁道大学软件工程系
    学生学籍管理系统 2019 版
    ***********************************************************
    1、 学生考试成绩录入
    2、 学生考试成绩修改
    3、 计算学生成绩绩点
    4、退出学籍管理系统
    **********************************************************
    ②功能说明输入数字 1-4 执行相应的功能,输入其他数字提示错误信息(该选项不存在),并返回主界面。(0.5 分)
    2、成绩录入功能操作流程:(3 分)
    ①在主界面选择成绩录入功能后,进入成绩录入界面,如下图所示:(0.5分)
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩录入
    ***********************************************************
    请输入学生学号:XXXXXXXX
    **********************************************************
    提示用户输入八位的学号。
    ②用户输入学号后,显示用户学号和姓名,如果用户学号不存在或信息错误提示错误信息(该学号不存在),并返回成绩录入界面。(0.5 分)
    ③用户输入学号正确如下图所示:
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩录入界面
    ***********************************************************
    学生学号:20180001
    学生姓名:XXX
    请输入高等数学成绩:XXX
    **********************************************************
    提示用户输入高等数学成绩,用户输入正确的数字;则提示用户输入大学英语成绩,依次类推,提示用户录入计算机网络、数据库、软件工程成绩,当第 3 页 共 8 页用户录完所有成绩后,显示如下界面。(1.5 分)
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩录入
    ***********************************************************
    学生学号:20180001
    学生姓名:XXX
    高等数学成绩:XXX
    大学英语成绩:XXX
    计算机网络成绩:XXX
    数据库成绩:XXX
    软件工程成绩:XXX
    该学生成绩已录入完毕,是否提交(Y/N)
    **********************************************************
    选择“Y”将录入成绩保存到相应的数组中,并返回主界面。选择“N”,则忽略上述成绩录入,并返回成绩录入界面。(0.5 分)
    3、成绩修改功能操作流程:(2 分)
    ①在主界面选择成绩修改功能后,进入考试成绩修改界面,如下图所示:
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩修改界面
    ***********************************************************
    请输入学生学号:XXXXXXXX
    **********************************************************
    提示用户输入八位的学号。(0.5 分)
    ②用户输入学号后,显示用户学号、姓名和全部成绩信息,如下图所示。
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩录入
    ***********************************************************
    学生学号:20180001
    学生姓名:XXX
    1、高等数学成绩:XXX
    2、大学英语成绩:XXX
    3、计算机网络成绩:XXX
    4、数据库成绩:XXX
    5、软件工程成绩:XXX
    **********************************************************
    如果用户学号不存在或信息错误提示错误信息(该学号不存在),并返回成绩修改界面。(0.5 分)
    ③用户选择相应的数字键,切换到如下界面(假如选择数字“5”)。(0.5分)
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩录入界面
    ***********************************************************
    学生学号:20180001
    学生姓名:XXX
    请输入修改后软件工程成绩:XXX
    **********************************************************
    录入修改后的成绩,则进入下一步。
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩录入
    ***********************************************************
    学生学号:20180001
    学生姓名:XXX
    1、高等数学成绩:XXX
    2、大学英语成绩:XXX
    3、计算机网络成绩:XXX
    4、数据库成绩:XXX
    5、软件工程成绩:XXX
    该学生成绩已修改完毕,是否提交(Y/N)
    **********************************************************
    选择“Y”将修改后成绩保存到相应的数组中,并返回主界面。选择“N”,则忽略上述成绩录入,并返回成绩修改界面。(0.5 分)
    3、计算学生成绩绩点功能操作流程:(2 分)
    ①在主界面选择计算学生成绩绩点功能后,进入计算学生成绩绩点界面,如下图所示:
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩绩点计算界面
    ***********************************************************
    请输入学生学号:XXXXXXXX
    **********************************************************
    第 6 页 共 8 页提示用户输入八位的学号。
    ②用户输入学号后,显示用户学号、姓名、学分绩点、提示信息。如下图所示。(1.5 分)
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩绩点计算界面
    ***********************************************************
    学生学号:20180001
    学生姓名:XXX
    1、高等数学成绩绩点:XXX
    2、大学英语成绩绩点:XXX
    3、计算机网络成绩绩点:XXX
    4、数据库成绩绩点:XXX
    5、软件工程成绩绩点:XXX
    你的平均学分绩点为:XXX
    提示信息:XXX XXX XXX XXX XXX XXX XXX
    是否返回系统主界面:(Y/N)
    **********************************************************
    如果学分绩点大于等于 2,提示信息显示“你的学分绩点已达到毕业要求!”;
    如果学分绩点小于 2,提示信息显示“你的学分绩点不满足毕业要求!”
    学分绩点计算方法:
    (1) 百分制对应绩点
    分数   ≥90   85~89.9    82~84.9   78~81.9   75~77.9   72~74.9    68~71.9   66~67.9   64~65.9   60~63.9   <60
    绩点   4.0         3.7             3.3            3.0              2.7             2.3            2.0             1.7               1.5          1.0            0
    (2)平均学分计算方法
    平均学分绩点=∑ ( 课程绩点× 该课程学分) /∑ 课程学分
    计算平均学分绩点按四舍五入原则, 小数点后保留两位有效数字。
    ③选择“Y”返回系统主界面。选择“N”,无操作。(0.5 分)
    4、用户选择数字“4”,显示如下界面,退出当前程序。(1 分)
    ***********************************************************
    谢谢使用石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    制作人:考生姓名
    ***********************************************************
     
     
    以下为实现部分:
     
     1 /*
     2  * 班级:信1805-1
     3  * 学号:20183566
     4  * 姓名:董奥
     5  * */
     6 
     7 public class ScoreInformation {
     8     private String stunumber;
     9     private String name;
    10     private double mathematicsscore;
    11     private double englishiscore;
    12     private double networkscore;
    13     private double databasescore;
    14     private double softwarescore;
    15     //定义 get()(读取变量信息)和 set()(设置变量信息)的方法
    16     public void setStunumber(String stunumber) {
    17         this.stunumber=stunumber;
    18     }
    19     public String getStunumber() {
    20         return stunumber;
    21     }
    22     public void setName(String name) {
    23         this.name=name;
    24     }
    25     public String getName() {
    26         return name;
    27     }
    28     public void setMathematicsscore(double mathematicsscore) {
    29         this.mathematicsscore=mathematicsscore;
    30     }
    31     public double getMathematicsscore() {
    32         return mathematicsscore;
    33     }
    34     public void setEnglishiscore(double englishiscore) {
    35         this.englishiscore=englishiscore;
    36     }
    37     public double getEnglishiscore() {
    38         return englishiscore;
    39     }
    40     public void setNetworkscore(double networkscore) {
    41         this.networkscore=networkscore;
    42     }
    43     public double getNetworkscore() {
    44         return networkscore;
    45     }
    46     public void setDatabasescore(double databasescore) {
    47         this.databasescore=databasescore;
    48     }
    49     public double getDatabasescore() {
    50         return databasescore;
    51     }
    52     public void setSoftwarescore(double softwarescore) {
    53         this.softwarescore=softwarescore;
    54     }
    55     public double getSoftwarescore() {
    56         return softwarescore;
    57     }
    58     public ScoreInformation(String stunumber,String name,double mathematicsscore,double englishiscore,double networkscore,double databasescore,double softwarescore) {
    59         this.stunumber=stunumber;
    60         this.name=name;
    61         this.mathematicsscore=mathematicsscore;
    62         this.englishiscore=englishiscore;
    63         this.networkscore=networkscore;
    64         this.databasescore=databasescore;
    65         this.softwarescore=softwarescore;
    66     }
    67 //    public static void main(String[] args) {
    68 //        ScoreInformation text=new ScoreInformation("20183566","董奥",1,2,3,4,5);
    69 //        System.out.println(text.getDatabasescore());
    70 //        System.out.println(text.getEnglishiscore());
    71 //        System.out.println(text.getMathematicsscore());
    72 //        System.out.println(text.getStunumber());
    73 //    }
    74 }
      1 import java.util.Scanner;
      2 public class ScoreManagement {
      3     static ScoreInformation Score1=new ScoreInformation("20180001","姓名1",0,0,0,0,0);
      4     static ScoreInformation Score2=new ScoreInformation("20180002","姓名2",0,0,0,0,0);
      5     static ScoreInformation Score3=new ScoreInformation("20180003","姓名3",0,0,0,0,0);
      6     static ScoreInformation Score4=new ScoreInformation("20180004","姓名4",0,0,0,0,0);
      7     static ScoreInformation Score5=new ScoreInformation("20180005","姓名5",0,0,0,0,0);
      8     static Scanner in=new Scanner(System.in);
      9     public static void menu(){
     10         System.out.println("***********************************************************");
     11         System.out.println("                                      石家庄铁道大学软件工程系");
     12         System.out.println("                                      学生学籍管理系统 2019 版");
     13         System.out.println("***********************************************************");
     14         System.out.println("                1、 学生考试成绩录入");
     15         System.out.println("                2、 学生考试成绩修改");
     16         System.out.println("                3、 计算学生成绩绩点");
     17         System.out.println("                4、退出学籍管理系统");
     18         System.out.println("**********************************************************");
     19         System.out.print("请输入:");
     20     }
     21     public static void totalMenu() {//总菜单
     22         int anss=0;
     23         while(anss!=4) {
     24             menu();
     25             anss=in.nextInt();
     26             if(anss==1) addScore();
     27             else if(anss==2) modifyScore();
     28             else if(anss==3) caculateScore();
     29             else if(anss==4);
     30             else 
     31                 System.out.println("该选项不存在");
     32         }
     33         System.out.println("退出成功");
     34         System.out.println("***********************************************************
    " + 
     35                 "谢谢使用石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    " + 
     36                 "制作人:董奥
    " + 
     37                 "***********************************************************");
     38     }
     39     public static void addMenu() {
     40         System.out.println("***********************************************************");
     41         System.out.println("              石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
     42         System.out.println("                                    学生考试成绩录入");
     43         System.out.println("***********************************************************");
     44         System.out.print("                                    请输入学生学号:");
     45     }
     46     public static void addInterface(ScoreInformation h) {//录入成绩界面
     47         System.out.println("***********************************************************");
     48         System.out.println("                  石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
     49         System.out.println("                                          学生考试成绩录入界面");
     50         System.out.println("***********************************************************");
     51         System.out.println("学生学号:"+h.getStunumber());
     52         System.out.println("学生姓名:"+h.getName());
     53         System.out.println("请输入高等数学成绩:");
     54         double ans1=in.nextDouble();
     55         System.out.println("请输入大学英语成绩:");
     56         double ans2=in.nextDouble();
     57         System.out.println("请输入计算机网络成绩:");
     58         double ans3=in.nextDouble();
     59         System.out.println("请输入数据库成绩:");        
     60         double ans4=in.nextDouble();
     61         System.out.println("请输入软件工程成绩:");
     62         double ans5=in.nextDouble();    
     63         System.out.println("***********************************************************");
     64         System.out.println("                  石家庄铁道大学软件工程系学生学籍管理系统 2019 版");
     65         System.out.println("                                          学生考试成绩录入界面");
     66         System.out.println("***********************************************************");
     67         System.out.println("学生学号:"+h.getStunumber());
     68         System.out.println("学生姓名:"+h.getName());
     69         System.out.println("高等数学成绩:"+ans1);
     70         System.out.println("大学英语成绩:"+ans2);
     71         System.out.println("计算机网络成绩:"+ans3);
     72         System.out.println("数据库成绩:"+ans4);
     73         System.out.println("软件工程成绩:"+ans5);
     74         System.out.print("该学生成绩已录入完毕,是否提交(Y/N)");
     75         String a=in.next();
     76         char s=a.charAt(0);
     77         if(s=='Y'||s=='y') {
     78             h.setMathematicsscore(ans1);        
     79             h.setEnglishiscore(ans2);    
     80             h.setNetworkscore(ans3);
     81             h.setDatabasescore(ans4);
     82             h.setSoftwarescore(ans5);
     83         }
     84         else
     85             addScore();
     86     }
     87     public static void addScore() {//录入成绩
     88         boolean flag=true;
     89         while(flag) {
     90             addMenu();
     91             String ans=in.next();//将输入的学号存入ans中
     92             if(ans.equals(Score1.getStunumber())) {//检查ans与那个Score相等
     93                 addInterface(Score1);
     94                 flag=false;
     95             }
     96             else if(ans.equals(Score2.getStunumber())) {
     97                 addInterface(Score2);
     98                 flag=false;
     99             }
    100             else if(ans.equals(Score3.getStunumber())) {
    101                 addInterface(Score3);
    102                 flag=false;
    103             }
    104             else if(ans.equals(Score4.getStunumber())) {
    105                 addInterface(Score4);
    106                 flag=false;
    107             }
    108             else if(ans.equals(Score5.getStunumber())) {
    109                 addInterface(Score5);
    110                 flag=false;
    111             }
    112             else 
    113                 System.out.println("该学号不存在1");
    114         }
    115     }
    116     public static void modifyMenu() {
    117         System.out.print("***********************************************************
    " + 
    118                 "                        石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    " + 
    119                 "                                              学生考试成绩修改界面
    " + 
    120                 "***********************************************************
    " + 
    121                 "请输入学生学号:");        
    122     }
    123     public static void modifyInterface(ScoreInformation h) {
    124         System.out.print("***********************************************************
    " + 
    125                 "                        石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    " + 
    126                 "                                             学生考试成绩录入
    " + 
    127                 "***********************************************************
    " + 
    128                 "学生学号:"+h.getStunumber()+"
    " + 
    129                 "学生姓名:"+h.getName()+"
    " + 
    130                 "1、高等数学成绩:"+h.getMathematicsscore()+"
    " + 
    131                 "2、大学英语成绩:"+h.getEnglishiscore()+"
    " + 
    132                 "3、计算机网络成绩:"+h.getNetworkscore()+"
    " + 
    133                 "4、数据库成绩:"+h.getDatabasescore()+"
    " + 
    134                 "5、软件工程成绩:"+h.getSoftwarescore()+"
    " + 
    135                 "**********************************************************");
    136         System.out.println("请选择修改内容:");
    137         int ans=in.nextInt();//记录序号
    138         double cmp;//记录接下来输入的成绩
    139         String s;
    140         char a;
    141         switch(ans) {
    142         case 1:
    143             System.out.print("***********************************************************
    " + 
    144                     "                         石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    " + 
    145                     "                                              学生考试成绩录入界面
    " + 
    146                     "***********************************************************
    " + 
    147                     "学生学号:"+h.getStunumber()+"
    " + 
    148                     "学生姓名:"+h.getName()+"
    " + 
    149                     "请输入修改后高等数学成绩:");
    150             cmp=in.nextDouble();
    151             System.out.println("***********************************************************
    " + 
    152                     "                         石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    " + 
    153                     "                                              学生考试成绩录入
    " + 
    154                     "***********************************************************
    " + 
    155                     "学生学号:"+h.getStunumber()+"
    " + 
    156                     "学生姓名:"+h.getName()+"
    " + 
    157                     "1、高等数学成绩:"+cmp+"
    " + 
    158                     "2、大学英语成绩:"+h.getEnglishiscore()+"
    " + 
    159                     "3、计算机网络成绩:"+h.getNetworkscore()+"
    " + 
    160                     "4、数据库成绩:"+h.getDatabasescore()+"
    " + 
    161                     "5、软件工程成绩:"+h.getSoftwarescore()+"
    " + 
    162                     "该学生成绩已修改完毕,是否提交(Y/N)
    " + 
    163                     "**********************************************************");
    164             s=in.next();
    165             a=s.charAt(0);
    166             if(a=='Y'||a=='y') h.setMathematicsscore(cmp);
    167             break;
    168         case 2:
    169             System.out.print("***********************************************************
    " + 
    170                     "                           石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    " + 
    171                     "                                              学生考试成绩录入界面
    " + 
    172                     "*************1**********************************************
    " + 
    173                     "学生学号:"+h.getStunumber()+"
    " + 
    174                     "学生姓名:"+h.getName()+"
    " + 
    175                     "请输入修改后大学英语成绩:");
    176             cmp=in.nextDouble();
    177             System.out.println("***********************************************************
    " + 
    178                     "                           石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    " + 
    179                     "                                              学生考试成绩录入
    " + 
    180                     "***********************************************************
    " + 
    181                     "学生学号:"+h.getStunumber()+"
    " + 
    182                     "学生姓名:"+h.getName()+"
    " + 
    183                     "1、高等数学成绩:"+h.getMathematicsscore()+"
    " + 
    184                     "2、大学英语成绩:"+cmp+"
    " + 
    185                     "3、计算机网络成绩:"+h.getNetworkscore()+"
    " + 
    186                     "4、数据库成绩:"+h.getDatabasescore()+"
    " + 
    187                     "5、软件工程成绩:"+h.getSoftwarescore()+"
    " + 
    188                     "该学生成绩已修改完毕,是否提交(Y/N)
    " + 
    189                     "**********************************************************");
    190             s=in.next();
    191             a=s.charAt(0);
    192             if(a=='Y'||a=='y') h.setEnglishiscore(cmp);
    193             break;
    194         case 3:
    195             System.out.print("***********************************************************
    " + 
    196                     "                          石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    " + 
    197                     "                                              学生考试成绩录入界面
    " + 
    198                     "***********************************************************
    " + 
    199                     "学生学号:"+h.getStunumber()+"
    " + 
    200                     "学生姓名:"+h.getName()+"
    " + 
    201                     "请输入修改后计算机网络成绩:");
    202             cmp=in.nextDouble();
    203             System.out.println("***********************************************************
    " + 
    204                     "                          石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    " + 
    205                     "                                              学生考试成绩录入
    " + 
    206                     "***********************************************************
    " + 
    207                     "学生学号:"+h.getStunumber()+"
    " + 
    208                     "学生姓名:"+h.getName()+"
    " + 
    209                     "1、高等数学成绩:"+h.getMathematicsscore()+"
    " + 
    210                     "2、大学英语成绩:"+h.getEnglishiscore()+"
    " + 
    211                     "3、计算机网络成绩:"+cmp+"
    " + 
    212                     "4、数据库成绩:"+h.getDatabasescore()+"
    " + 
    213                     "5、软件工程成绩:"+h.getSoftwarescore()+"
    " + 
    214                     "该学生成绩已修改完毕,是否提交(Y/N)
    " + 
    215                     "**********************************************************");
    216             s=in.next();
    217             a=s.charAt(0);
    218             if(a=='Y'||a=='y') h.setNetworkscore(cmp);
    219             break;
    220         case 4:
    221             System.out.print("***********************************************************
    " + 
    222                     "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    " + 
    223                     "学生考试成绩录入界面
    " + 
    224                     "***********************************************************
    " + 
    225                     "学生学号:"+h.getStunumber()+"
    " + 
    226                     "学生姓名:"+h.getName()+"
    " + 
    227                     "请输入修改后数据库成绩:");
    228             cmp=in.nextDouble();
    229             System.out.println("***********************************************************
    " + 
    230                     "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    " + 
    231                     "学生考试成绩录入
    " + 
    232                     "***********************************************************
    " + 
    233                     "学生学号:"+h.getStunumber()+"
    " + 
    234                     "学生姓名:"+h.getName()+"
    " + 
    235                     "1、高等数学成绩:"+h.getMathematicsscore()+"
    " + 
    236                     "2、大学英语成绩:"+h.getEnglishiscore()+"
    " + 
    237                     "3、计算机网络成绩:"+h.getNetworkscore()+"
    " + 
    238                     "4、数据库成绩:"+cmp+"
    " + 
    239                     "5、软件工程成绩:"+h.getSoftwarescore()+"
    " + 
    240                     "该学生成绩已修改完毕,是否提交(Y/N)
    " + 
    241                     "**********************************************************");
    242             s=in.next();
    243             a=s.charAt(0);
    244             if(a=='Y'||a=='y') h.setDatabasescore(cmp);
    245             break;
    246         case 5:
    247             System.out.print("***********************************************************
    " + 
    248                     "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    " + 
    249                     "学生考试成绩录入界面
    " + 
    250                     "***********************************************************
    " + 
    251                     "学生学号:"+h.getStunumber()+"
    " + 
    252                     "学生姓名:"+h.getName()+"
    " + 
    253                     "请输入修改后软件工程成绩:");
    254             cmp=in.nextDouble();
    255             System.out.println("***********************************************************
    " + 
    256                     "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    " + 
    257                     "学生考试成绩录入
    " + 
    258                     "***********************************************************
    " + 
    259                     "学生学号:"+h.getStunumber()+"
    " + 
    260                     "学生姓名:"+h.getName()+"
    " + 
    261                     "1、高等数学成绩:"+h.getMathematicsscore()+"
    " + 
    262                     "2、大学英语成绩:"+h.getEnglishiscore()+"
    " + 
    263                     "3、计算机网络成绩:"+h.getNetworkscore()+"
    " + 
    264                     "4、数据库成绩:"+h.getDatabasescore()+"
    " + 
    265                     "5、软件工程成绩:"+cmp+"
    " + 
    266                     "该学生成绩已修改完毕,是否提交(Y/N)
    " + 
    267                     "**********************************************************");
    268             s=in.next();
    269             a=s.charAt(0);
    270             if(a=='Y'||a=='y') h.setSoftwarescore(cmp);
    271             break;
    272         default:
    273             System.out.println("输入序号错误");
    274         }
    275     }
    276     public static void modifyScore() {//修改成绩
    277         boolean flag=true;
    278         while(flag) {
    279             modifyMenu();
    280             String ans=in.next();//将输入的学号存入ans中
    281             if(ans.equals(Score1.getStunumber())) {
    282                 modifyInterface(Score1);
    283                 flag=false;
    284             }
    285             else if(ans.equals(Score2.getStunumber())) {
    286                 modifyInterface(Score2);
    287                 flag=false;
    288             }
    289             else if(ans.equals(Score3.getStunumber())) {
    290                 modifyInterface(Score3);
    291                 flag=false;
    292             }
    293             else if(ans.equals(Score4.getStunumber())) {
    294                 modifyInterface(Score4);
    295                 flag=false;
    296             }
    297             else if(ans.equals(Score5.getStunumber())) {
    298                 modifyInterface(Score5);
    299                 flag=false;
    300             }
    301             else 
    302                 System.out.println("该学号不存在2");
    303         }
    304     }
    305     public static void caculateMenu() {
    306         System.out.println("***********************************************************
    " + 
    307                 "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    " + 
    308                 "学生考试成绩绩点计算界面
    " + 
    309                 "***********************************************************
    " + 
    310                 "请输入学生学号:");
    311     }
    312     public static void caculateInterface(ScoreInformation h) {
    313         double [] s=new double[5];//分别存储1--5五门学科成绩
    314         s[0]=h.getMathematicsscore();
    315         s[1]=h.getEnglishiscore();
    316         s[2]=h.getNetworkscore();
    317         s[3]=h.getDatabasescore();
    318         s[4]=h.getSoftwarescore();
    319         double[] result=new double[5];//分别存储1-5学科的绩点
    320         double [] credit= {4,3,4,3,2};//存储各科学分
    321         double sum=0;
    322         for (int i = 0; i < s.length; i++) {
    323             if(s[i]>=90) result[i]=4.0;
    324             else if(s[i]>=85&&s[i]<90) result[i]=3.7;
    325             else if(s[i]>=82&&s[i]<85) result[i]=3.3;
    326             else if(s[i]>=78&&s[i]<82) result[i]=3.0;
    327             else if(s[i]>=75&&s[i]<78) result[i]=2.7;
    328             else if(s[i]>=72&&s[i]<75) result[i]=2.3;
    329             else if(s[i]>=68&&s[i]<72) result[i]=2.0;
    330             else if(s[i]>=66&&s[i]<68) result[i]=1.7;
    331             else if(s[i]>=64&&s[i]<66) result[i]=1.5;
    332             else if(s[i]>=60&&s[i]<64) result[i]=1.0;
    333             else  result[i]=0;
    334             sum+=result[i]*credit[i];
    335         }
    336         sum/=16;
    337         boolean flag=true;
    338         if(sum<2)
    339             flag=false;
    340             System.out.print("***********************************************************
    " + 
    341                 "石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    " + 
    342                 "学生考试成绩绩点计算界面
    " + 
    343                 "***********************************************************
    " + 
    344                 "学生学号:"+h.getStunumber()+"
    " + 
    345                 "学生姓名:"+h.getName()+"
    " + 
    346                 "1、高等数学成绩绩点:"+result[0]+"
    " + 
    347                 "2、大学英语成绩绩点:"+result[1]+"
    " + 
    348                 "3、计算机网络成绩绩点:"+result[2]+"
    " + 
    349                 "4、数据库成绩绩点:"+result[3]+"
    " + 
    350                 "5、软件工程成绩绩点:"+result[4]+"
    " + 
    351                 "你的平均学分绩点为:");
    352             System.out.println(String.format("%.2f", sum));    //计算结果保留小数点后两位
    353         if(flag)
    354                 System.out.println("提示信息:你的学分绩点已达到毕业要求!");
    355         else
    356             System.out.println("你的学分绩点不满足毕业要求!");
    357 
    358                 System.out.println("是否返回系统主界面:(Y/N)");
    359                 String a;
    360                 char c='2';
    361                 while(c!='Y'&&c!='y') {
    362                     a=in.next();
    363                     c=a.charAt(0);
    364                 }
    365     }
    366     public static void caculateScore() {//计算学分绩点
    367         boolean flag=true;
    368         while(flag) {
    369             caculateMenu();
    370             String ans=in.next();//将输入的学号存入ans中
    371             if(ans.equals(Score1.getStunumber())) {
    372                 caculateInterface(Score1);
    373                 flag=false;
    374             }
    375             else if(ans.equals(Score2.getStunumber())) {
    376                 caculateInterface(Score2);
    377                 flag=false;
    378             }
    379             else if(ans.equals(Score3.getStunumber())) {
    380                 caculateInterface(Score3);
    381                 flag=false;
    382             }
    383             else if(ans.equals(Score4.getStunumber())) {
    384                 caculateInterface(Score4);
    385                 flag=false;
    386             }
    387             else if(ans.equals(Score5.getStunumber())) {
    388                 caculateInterface(Score5);
    389                 flag=false;
    390             }
    391             else 
    392                 System.out.println("该学号不存在3");
    393         }
    394     }
    395     public static void main(String[] args) {
    396         totalMenu();
    397     }
    398 }
  • 相关阅读:
    2955 ACM 杭电 抢银行 01背包 乘法
    杭店 ACM 1864 最大报销额 01背包
    【ACM】 1231 最大连续子序列
    如何保证消息队列的幂等性
    Kafka如何保证消息的高可用
    消息队列的优点和缺点
    架构学习和经验积累的方法
    如何撰写总体设计与详细设计文档
    如何做合格的面试官
    如何设计好的接口
  • 原文地址:https://www.cnblogs.com/dongao/p/11505740.html
Copyright © 2011-2022 走看看