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.程序调试截图

原文地址:https://www.cnblogs.com/Lhxxx/p/11515539.html

时间: 2024-11-12 10:47:34

JAVA语言课堂测试试卷01学生信息管理系统的相关文章

java_000.JAVA语言课堂测试试卷01

在暑假各种自学,来学校发现还要考文件,又补文件,至于数据库,卡在了插入数据,可以打印所有的数据但就是插入老师出错.(当然今天下午这一问题已经解决了).在上周四,迎来了Java考试,原定1个半小时,由于试卷更改,改为2个半,又延长到3个小时.我就感觉我顺着自己的思路往下写,写一段验证一下,也没出现什么bug,但写着写着时间就到了,最终只写出来框架和账户登陆,存款,取款,修改密码,文件完全没写到.老师说他花了两个小时写完,还觉得自己很慢了. 题目就是ATM取款机,要求有字符打印的界面,输入账户密码来

JAVA语言课堂测试01源代码(学生成绩管理系统)

package 考试; /*信1807-8 * 20183798 * 向瑜 */ import java.util.Scanner; //ScoreInformation 类 class ScoreInformation { private String stunumber; private String name; private double mathematicsscore; private double englishscore; private double networkscore;

JAVA语言课堂测试

一.实验要求 一.数据结构要求:(5 分) 1.定义 ScoreInformation 类,其中包括七个私有变量(stunumber,name, mathematicsscore, englishiscore,networkscore,databasescore,softwarescore).各成员的含义如下: 变量 stunumber 为字符串类型 String,用于存储学生的学号(有 8 位数字组成). 变量 name 为字符串类型 String,用于存储学生的姓名. 变量 mathemat

手把手搭建Java学生信息管理系统【附源码】

基于JavaWeb的学生信息管理系统的设计与实现 一.系统简介 本课程演示的是一套基于JavaWeb实现的学生信息管理系统,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的java人群. 详细介绍了学生信息管理系统的实现,包括:1.项目介绍2.环境搭建3.系统功能4.技术实现5.项目运行6.功能演示 以通俗易懂的方式,手把手的带你从零开始运行本套学生信息管理系统,该项目附带全部源码可作为毕设使用. 二.技术实现 ?1. 后台框架:Servlet.JSP.JDBC.DbUtils ?2

Java 实现学生信息管理系统

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

【转载】C语言综合实验1—学生信息管理系统

http://www.cnblogs.com/Anker/archive/2013/05/06/3063436.html 实验题目:学生信息管理系统 实验要求:用户可以选择1-7可以分别进行学生信息的查看.添加.删除,修改,计算平均成绩,保存,退出系统操作. 提示:用一个结构体类型表示学生信息 typedef struct node /*定义结构体*/ { int num; //学号 char name[15];//姓名 char sex[9]; //性别 int age; //年龄 int e

Java 学生信息管理系统的实现(简洁易懂),适合计算机专业学生参考,毕业论文设计参考等

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

Java学生信息管理系统源码

学生信息管理系统 功能说明 学生信息管理,包括学生.班级.院系.课程.成绩等的管理. 本程序仅供学习食用. 工程环境 JDK IntelliJ IDEA MySQL 运行说明 1.安装JDK. 2.导入SQL脚本并配置. 使用前请导入DumpStructureOnly.sql(数据库结构文件) 或者 DumpStructure_and_Data.sql(带有测试数据的数据库文件), 使用Navicat导入上述脚本至MySQL数据库 修改dbConn.java配置文件: 数据库端口:3306 数据

Java学生信息管理系统及支持用户名登录

package zzzzzzzz; import java.io.*; public class Text { public static void main(String[] args) throws MyException, IOException { Login l=new Login(); l.login(); } } class Student{ private String stunumber; private String name; private String age; pri