zoukankan      html  css  js  c++  java
  • JAVA语言课堂测试试卷01学生信息管理系统

    1.源程序思路:将成绩录入、成绩修改、计算绩点、退出系统分别写成四个函数,主函数利用switch以及while循环完成调用和循环。

    2.程序源代码:

    package Studen;
    //定义ScoreInformation类
    class ScoreInformation {
     private String stunumber;
     private String name;
     private double mathematicsscore;
     private double englishiscore;
     private double networkscore;
     private double databasescore;
     private double softwarescore;
     public void setStunumber(String stunumber){
      this.stunumber = stunumber;
     }
     public void setName(String name){
      this.name = name;
     }
     public void setMathematicsscore(double mathematicsscore){
      this.mathematicsscore = mathematicsscore;
     }
     public void setEnglishiscore(double englishiscore){
      this.englishiscore = englishiscore;
     }
     public void setNetworkscore(double networkscore){
      this.networkscore = networkscore;
     }
     public void setDatabasescore(double databasescore){
      this.databasescore = databasescore;
     }
     public void setSoftwarescore(double softwarescore){
      this.softwarescore = softwarescore;
     }
     public String getStunumber(){
      return stunumber;
     }
     public String getName(){
      return name;
     }
     public double getMathematicsscore(){
      return mathematicsscore;
     }
     public double getEnglishiscore(){
      return englishiscore;
     }
     public double getNetworkscore(){
      return networkscore;
     }
     public double getDatabasescore(){
      return databasescore;
     }
     public double getSoftwarescore(){
      return softwarescore;
     }
    }
     
     
    主方法:
    package Studen;
    import java.util.*;
    import java.text.DecimalFormat; 
    public class Main {
     static ScoreInformation[] ScoreInformation=new ScoreInformation[5];
     static Scanner scanner=new Scanner(System.in);
     static  int num;
     public static void main(String[] args) {
      // TODO Auto-generated method stub
      //退出学籍管理系统
      for(int i=0;i<5;i++)
       ScoreInformation[i]=new ScoreInformation();
      ScoreInformation[0].setStunumber("20183580");
      ScoreInformation[0].setName("liuhexin");
      ScoreInformation[1].setStunumber("20183581");
      ScoreInformation[1].setName("A");
      ScoreInformation[2].setStunumber("20183582");
      ScoreInformation[2].setName("B");
      ScoreInformation[3].setStunumber("20183583");
      ScoreInformation[3].setName("C");
      ScoreInformation[4].setStunumber("20183584");
      ScoreInformation[4].setName("D");
       while(true) {
        display();
       int n = scanner.nextInt();
       switch(n){
       case 1: add();break;//成绩录入
       case 2: change();break; //成绩修改
       case 3: JDdisplay();break;//成绩绩点 
       case 4: exit();break;//退出学籍管理系统
       }
       }
    }
     static void display() {//主界面
      System.out.println("***********************************************************");
      System.out.println("                                石家庄铁道大学软件工程系");
      System.out.println("                                学生学籍管理系统 2019 版");
      System.out.println("***********************************************************");
      System.out.println("                                1、 学生考试成绩录入");
      System.out.println("                                2、 学生考试成绩修改");
      System.out.println("                                3、 计算学生成绩绩点");
      System.out.println("                                4、退出学籍管理系统");
      System.out.println("***********************************************************");
     }
     static void add() {//成绩录入
      int num=0;
       System.out.println("***********************************************************");
       System.out.println("            石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
       System.out.println("                                学生考试成绩录入 ");
       System.out.println("*********************************************************** ");
       System.out.print("                                请输入学生学号:");//判断学号
       String n = scanner.next();
       int flag=0;
       for(int i=0;i<5;i++)
       {
        
        if(n.equals(ScoreInformation[i].getStunumber())) {
         flag=1;
         num = i;
         System.out.println("***********************************************************");
         System.out.println("            石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
         System.out.println("                                学生考试成绩录入 ");
         System.out.println("*********************************************************** ");
         System.out.println("                                学生学号:"+ScoreInformation[num].getStunumber());
         System.out.println("                                学生姓名:"+ScoreInformation[num].getName());
         System.out.print("                                请输入高等数学成绩:");
         ScoreInformation[num].setMathematicsscore(scanner.nextDouble());
         System.out.println("********************************************************** ");
         System.out.println("***********************************************************");
         System.out.println("            石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
         System.out.println("                                学生考试成绩录入 ");
         System.out.println("*********************************************************** ");
         System.out.println("                                学生学号:"+ScoreInformation[num].getStunumber());
         System.out.println("                                学生姓名:"+ScoreInformation[num].getName());
         System.out.print("                                请输入大学英语成绩:");
         ScoreInformation[num].setEnglishiscore(scanner.nextDouble());
         System.out.println("********************************************************** ");
         System.out.println("***********************************************************");
         System.out.println("            石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
         System.out.println("                                学生考试成绩录入 ");
         System.out.println("*********************************************************** ");
         System.out.println("                                学生学号:"+ScoreInformation[num].getStunumber());
         System.out.println("                                学生姓名:"+ScoreInformation[num].getName());
         System.out.print("                                请输入计算机网络成绩:");
         ScoreInformation[num].setNetworkscore(scanner.nextDouble());
         System.out.println("********************************************************** ");
         System.out.println("***********************************************************");
         System.out.println("            石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
         System.out.println("                                学生考试成绩录入 ");
         System.out.println("*********************************************************** ");
         System.out.println("                                学生学号:"+ScoreInformation[num].getStunumber());
         System.out.println("                                学生姓名:"+ScoreInformation[num].getName());
         System.out.print("                                请输入数据库成绩:");
         ScoreInformation[num].setDatabasescore(scanner.nextDouble());
         System.out.println("********************************************************** ");
         System.out.println("***********************************************************");
         System.out.println("            石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
         System.out.println("                                学生考试成绩录入 ");
         System.out.println("*********************************************************** ");
         System.out.println("                                学生学号:"+ScoreInformation[num].getStunumber());
         System.out.println("                                学生姓名:"+ScoreInformation[num].getName());
         System.out.print("                                请输入软件工程成绩:");
         ScoreInformation[num].setSoftwarescore(scanner.nextDouble());
         System.out.println("********************************************************** ");
         System.out.println("********************************************************** ");
         System.out.println("            石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
         System.out.println("                                学生考试成绩录入 ");
         System.out.println("*********************************************************** ");
         System.out.println("                                学生学号:"+ScoreInformation[num].getStunumber());
         System.out.println("                                学生姓名:"+ScoreInformation[num].getName());
         System.out.println("                                高等数学成绩:"+ScoreInformation[num].getMathematicsscore());
         System.out.println("                                大学英语:"+ScoreInformation[num].getEnglishiscore());
         System.out.println("                                计算机网络成绩:"+ScoreInformation[num].getNetworkscore());
         System.out.println("                                数据库成绩:"+ScoreInformation[num].getDatabasescore());
         System.out.println("                                软件工程成绩:"+ScoreInformation[num].getSoftwarescore());
         System.out.println("                                该学生成绩已录入完毕,是否提交(Y/N) ");
         System.out.println("*********************************************************** ");
         String as = scanner.next();
         if(as.equals("Y")) {
          display();
         }
         else {
          ScoreInformation[num].setMathematicsscore(0);
          ScoreInformation[num].setEnglishiscore(0);
          ScoreInformation[num].setNetworkscore(0);
          ScoreInformation[num].setDatabasescore(0);
          ScoreInformation[num].setSoftwarescore(0);
          add();
         }
        }
       }
       if(flag==0) {
        System.out.println("                                用户学号不存在");
        add();
       }
    }
     static void change() {//成绩修改
      System.out.println("*********************************************************** ");
      System.out.println("            石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
      System.out.println("                                学生考试成绩修改界面  ");
      System.out.println("*********************************************************** ");
      System.out.print("                                请输入学生学号:");
      String n = scanner.next();
      int flag=0;
      System.out.println("*********************************************************** ");
      int num;
      for(int i=0;i<5;i++) {
       if(n.equals(ScoreInformation[i].getStunumber())) {
        num=i;
        flag=1;
        System.out.println("********************************************************** ");
        System.out.println("            石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
        System.out.println("                                学生考试成绩录入 ");
        System.out.println("*********************************************************** ");
        System.out.println("                                学生学号:"+ScoreInformation[num].getStunumber());
        System.out.println("                                学生姓名:"+ScoreInformation[num].getName());
        System.out.println("                                1、高等数学成绩:"+ScoreInformation[num].getMathematicsscore());
        System.out.println("                                2、大学英语:"+ScoreInformation[num].getEnglishiscore());
        System.out.println("                                3、计算机网络成绩:"+ScoreInformation[num].getNetworkscore());
        System.out.println("                                4、数据库成绩:"+ScoreInformation[num].getDatabasescore());
        System.out.println("                                5、软件工程成绩:"+ScoreInformation[num].getSoftwarescore());
        System.out.println("*********************************************************** ");
        System.out.print("                                请输入要修改成绩编号:");
        int b = scanner.nextInt();
        System.out.println("********************************************************** ");
        System.out.println("            石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
        System.out.println("                                学生考试成绩录入界面 ");
        System.out.println("*********************************************************** ");
        System.out.println("                                学生学号:"+ScoreInformation[num].getStunumber());
        System.out.println("                                学生姓名:"+ScoreInformation[num].getName());
        switch(b) {
        case 1:System.out.print("                                请输入修改后的高等数学成绩:");
        ScoreInformation[num].setMathematicsscore(scanner.nextDouble());break;
        case 2:System.out.print("                                请输入修改后的大学英语成绩:");
        ScoreInformation[num].setEnglishiscore(scanner.nextDouble());break;
        case 3:System.out.print("                                请输入修改后的计算机网络成绩:");
        ScoreInformation[num].setNetworkscore(scanner.nextDouble());break;
        case 4:System.out.print("                                请输入修改后的数据库成绩:");
        ScoreInformation[num].setDatabasescore(scanner.nextDouble());break;
        case 5:System.out.print("                                请输入修改后的软件工程成绩:");
        ScoreInformation[num].setSoftwarescore(scanner.nextDouble());break;
        }
        System.out.println("********************************************************** ");
        System.out.println("            石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
        System.out.println("                                学生考试成绩录入 ");
        System.out.println("*********************************************************** ");
        System.out.println("                                学生学号:"+ScoreInformation[num].getStunumber());
        System.out.println("                                学生姓名:"+ScoreInformation[num].getName());
        System.out.println("                                1、高等数学成绩:"+ScoreInformation[num].getMathematicsscore());
        System.out.println("                                2、大学英语:"+ScoreInformation[num].getEnglishiscore());
        System.out.println("                                3、计算机网络成绩:"+ScoreInformation[num].getNetworkscore());
        System.out.println("                                4、数据库成绩:"+ScoreInformation[num].getDatabasescore());
        System.out.println("                                5、软件工程成绩:"+ScoreInformation[num].getSoftwarescore());
        System.out.println("                                该学生成绩已修改完毕,是否提交(Y/N) ");
        System.out.println("*********************************************************** ");
        String cs = scanner.next();
        if(cs.equals("Y")) {
         display();
        }
        else {
         change();
        }
       }
      }
      if(flag==0) {
       System.out.println("                                用户学号不存在");
       change();
      }
     }
     static double JD (double score) {//绩点计算
      double jd=0;
      if(score>=90)  jd = 4.0;
      if(score>=85&&score<=89.9) jd = 3.7;
      if(score>=82&&score<=84.9) jd = 3.3;
      if(score>=78&&score<=81.9) jd = 3.0;
      if(score>=75&&score<=77.9) jd = 2.7;
      if(score>=72&&score<=74.9) jd = 2.3;
      if(score>=68&&score<=71.9) jd = 2.0;
      if(score>=66&&score<=67.9) jd = 1.7;
      if(score>=64&&score<=65.9) jd = 1.5;
      if(score>=60&&score<=63.9) jd = 1.0;
      if(score<60) jd = 0;
      return jd;
      }
     static void JDdisplay() {//输出绩点
      System.out.println("*********************************************************** ");
      System.out.println("            石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
      System.out.println("                                学生考试成绩绩点计算界面  ");
      System.out.println("*********************************************************** ");
      System.out.print("                                请输入学生学号:");
      String n = scanner.next();
      System.out.println("*********************************************************** ");
      for(int i=0;i<5;i++) {
       if(n.equals(ScoreInformation[i].getStunumber())) {
        double M=JD(ScoreInformation[i].getMathematicsscore());
        double E=JD(ScoreInformation[i].getEnglishiscore());
        double N=JD(ScoreInformation[i].getNetworkscore());
        double D=JD(ScoreInformation[i].getDatabasescore());
        double S=JD(ScoreInformation[i].getSoftwarescore());
        double average = (M*4+E*3+N*4+D*3+S*2)/16;
        DecimalFormat df   = new DecimalFormat("#0.00");  
        
        System.out.println("*********************************************************** ");
        System.out.println("            石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
        System.out.println("                                学生考试成绩绩点计算界面  ");
        System.out.println("*********************************************************** ");
        System.out.println("                                学生学号:"+ScoreInformation[num].getStunumber());
        System.out.println("                                学生姓名:"+ScoreInformation[num].getName());
        System.out.println("                                1、高等数学成绩绩点:"+M);
        System.out.println("                                2、大学英语成绩绩点:"+E);
        System.out.println("                                3、计算机网络成绩绩点:"+N);
        System.out.println("                                4、数据库成绩绩点:"+D);
        System.out.println("                                5、软件工程成绩绩点:"+S);
        System.out.println("                                你的平均学分绩点为:"+df.format(average));
        if(average>2)
         System.out.println("                                提示信息:你的学分绩点已达到毕业要求!");
        else {
         System.out.println("                                提示信息:你的学分绩点不满足毕业要求!");
        }
        System.out.println("                                是否返回系统主界面:(Y/N) ");
        System.out.println("********************************************************** ");
        String js = scanner.next();
        if(js.equals("Y")) {
         display();
        }
        else {
       }
      }
     }
     }
     static void exit() {//退出系统
      System.out.println("***********************************************************");
      System.out.println("谢谢使用石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
      System.out.println("                                制作人:刘贺鑫 ");
      System.out.println("*********************************************************** ");
      System.exit(0);
     }
    }
    3.程序调试截图

     

     

     

     

     

     

  • 相关阅读:
    mysql系列~mysqldump使用技巧
    mysql系列~logrotate
    最详细的经典双向电平转换电路的工作原理图文分析
    《USB应用分析精粹:从设备硬件、固件到主机程序设计》已经完稿
    Windows x86环境下使用QEMU安装arm架构银河麒麟V10操作系统
    不动产测绘包含哪些内容
    java问题收集
    java调用接口(rest-assured)
    java调用接口(okhttp )
    testng+allure
  • 原文地址:https://www.cnblogs.com/Lhxxx/p/11515539.html
Copyright © 2011-2022 走看看