zoukankan      html  css  js  c++  java
  • java程序

    石家庄铁道大学 2019 年秋季 2018 级课堂测试试卷(一)(15 分)
    课程名称: JAVA 语言程序设计 任课教师: 王建民 考试时间: 150 分钟

    一、考试要求:
    1、按照测试内容要求完成程序的设计与编程;
    2、建立学号姓名文件夹,如:“信 1805-1 班 20183557 杨雄豪”,将
    源程序文件、accountinformation.txt、accountlist.txt 保存在文件
    夹中,压缩成 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 分。
    第 2 页 共 8 页
    变量 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、退出学籍管理系统
    **********************************************************

    第 3 页 共 8 页
    ②功能说明
    输入数字 1-4 执行相应的功能,输入其他数字提示错误信息(该选项
    不存在),并返回主界面。(0.5 分)
    2、成绩录入功能操作流程:(3 分)
    ①在主界面选择成绩录入功能后,进入成绩录入界面,如下图所示: (0.5
    分)
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩录入
    ***********************************************************
    请输入学生学号:XXXXXXXX
    **********************************************************
    提示用户输入八位的学号。
    ②用户输入学号后,显示用户学号和姓名,如果用户学号不存在或信息错
    误提示错误信息(该学号不存在),并返回成绩录入界面。(0.5 分)
    ③用户输入学号正确如下图所示:
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩录入界面
    ***********************************************************
    学生学号:20183557
    学生姓名:杨雄豪
    请输入高等数学成绩:XXX
    **********************************************************
    提示用户输入高等数学成绩,用户输入正确的数字;则提示用户输入大学
    英语成绩,依次类推,提示用户录入计算机网络、数据库、软件工程成绩,当
    第 4 页 共 8 页
    用户录完所有成绩后,显示如下界面。(1.5 分)
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩录入
    ***********************************************************
    学生学号:20183557
    学生姓名:杨雄豪
    高等数学成绩:XXX
    大学英语成绩:XXX
    计算机网络成绩:XXX
    数据库成绩:XXX
    软件工程成绩:XXX
    该学生成绩已录入完毕,是否提交(Y/N)
    **********************************************************
    选择“Y”将录入成绩保存到相应的数组中,并返回主界面。选择“N”,
    则忽略上述成绩录入,并返回成绩录入界面。(0.5 分)
    3、成绩修改功能操作流程:(2 分)
    ①在主界面选择成绩修改功能后,进入考试成绩修改界面,如下图所示:

    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩修改界面
    ***********************************************************
    请输入学生学号:XXXXXXXX
    **********************************************************
    提示用户输入八位的学号。(0.5 分)

    第 5 页 共 8 页
    ②用户输入学号后,显示用户学号、姓名和全部成绩信息,如下图所示。

    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩录入
    ***********************************************************
    学生学号:20183557
    学生姓名:杨雄豪
    1、高等数学成绩:XXX
    2、大学英语成绩:XXX
    3、计算机网络成绩:XXX
    4、数据库成绩:XXX
    5、软件工程成绩:XXX
    **********************************************************
    如果用户学号不存在或信息错误提示错误信息(该学号不存在),并返回
    成绩修改界面。(0.5 分)
    ③用户选择相应的数字键,切换到如下界面(假如选择数字“5”)。(0.5
    分)
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩录入界面
    ***********************************************************
    学生学号:20183557
    学生姓名:杨雄豪
    请输入修改后软件工程成绩:XXX
    **********************************************************
    录入修改后的成绩,则进入下一步。
    第 6 页 共 8 页
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩录入
    ***********************************************************
    学生学号:20183557
    学生姓名:杨雄豪
    1、高等数学成绩:XXX
    2、大学英语成绩:XXX
    3、计算机网络成绩:XXX
    4、数据库成绩:XXX
    5、软件工程成绩:XXX
    该学生成绩已修改完毕,是否提交(Y/N)
    **********************************************************

    选择“Y”将修改后成绩保存到相应的数组中,并返回主界面。选择“N”,
    则忽略上述成绩录入,并返回成绩修改界面。(0.5 分)

    3、计算学生成绩绩点功能操作流程:(2 分)
    ①在主界面选择计算学生成绩绩点功能后,进入计算学生成绩绩点界面,
    如下图所示:
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩绩点计算界面
    ***********************************************************
    请输入学生学号:XXXXXXXX
    **********************************************************
    第 7 页 共 8 页
    提示用户输入八位的学号。
    ②用户输入学号后,显示用户学号、姓名、学分绩点、提示信息。如下图
    所示。(1.5 分)
    ***********************************************************
    石家庄铁道大学软件工程系学生学籍管理系统 2019 版
    学生考试成绩绩点计算界面
    ***********************************************************
    学生学号:20183557
    学生姓名:杨雄豪
    1、高等数学成绩绩点:XXX
    2、大学英语成绩绩点:XXX
    3、计算机网络成绩绩点:XXX
    4、数据库成绩绩点:XXX
    5、软件工程成绩绩点:XXX
    你的平均学分绩点为:XXX
    提示信息:XXX XXX XXX XXX XXX XXX XXX
    是否返回系统主界面:(Y/N)
    **********************************************************
    如果学分绩点大于等于 2,提示信息显示“你的学分绩点已达到毕业要
    求!”;
    如果学分绩点小于 2,提示信息显示“你的学分绩点不满足毕业要求!”





    第 8 页 共 8 页
    学分绩点计算方法:
    (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 版
    制作人:考生姓名
    ***********************************************************

    //张华锦 20183631 信1805-2

    //ScoreInformation类

    package java考试;

    public class ScoreInformation {
    private String stunumber;
    private String name;
    private Double mathematicsscore;
    private Double englishiscore;
    private Double networkscore;
    private Double databasescore;
    private Double softwarescore;
    ScoreInformation ()
    {
    stunumber="";//学号
    name="";//姓名
    mathematicsscore =0.0;//高数成绩
    englishiscore =0.0; //大学英语成绩
    networkscore =0.0;//计算机网络成绩
    databasescore=0.0;//数据库成绩
    softwarescore=0.0;//软件工程成绩
    }
    /* ScoreInformation (String a,String b,Double c,Double d,Double e,Double f,Double g)
    {
    stunumber=a;
    name=b;
    mathematicsscore=c;
    englishiscore=d;
    networkscore=e;
    databasescore=f;
    softwarescore=g;
    }*/

    public void set_stunumber(String stunumber)
    {
    this.stunumber=stunumber;
    }
    public void set_name(String name)
    {
    this.name=name;
    }
    public void set_mathematicsscore(Double mathematicsscore)
    {
    this.mathematicsscore=mathematicsscore;
    }
    public void set_englishiscore(Double englishiscore)
    {
    this.englishiscore=englishiscore;
    }
    public void set_networkscore(Double networkscore)
    {
    this.networkscore=networkscore;
    }
    public void set_databasescore(Double databasescore)
    {
    this.databasescore=databasescore;
    }
    public void set_softwarescore(Double softwarescore)
    {
    this.softwarescore=softwarescore;
    }
    public String get_stunumber()
    {
    return stunumber;
    }
    public String get_name()
    {
    return name;
    }
    public Double get_mathematicsscore()
    {
    return mathematicsscore;
    }
    public Double get_englishiscore()
    {
    return englishiscore;
    }
    public Double get_networkscore()
    {
    return networkscore;
    }
    public Double get_databasescore()
    {
    return databasescore;
    }
    public Double get_softwarescore()
    {
    return softwarescore;
    }

    }

    //张华锦   20183631 信1805-2

    //Scoremanagement类

    package java考试;


    import java.util.Scanner;

    public class ScoreManagement {
    private static ScoreInformation[] A=new ScoreInformation[5];
    public static void main(String[] args) {
    for(int i=0;i<5;i++)
    {
    A[i]=new ScoreInformation();
    }
    A[0].set_stunumber("20183631");A[0].set_name("张华锦");
    A[1].set_stunumber("20183630");A[1].set_name("丁贺雄");
    A[2].set_stunumber("20183629");A[2].set_name("苗可卓");
    A[3].set_stunumber("20183628");A[3].set_name("做下");
    A[4].set_stunumber("20183627");A[4].set_name("自行车");
    Scanner input=new Scanner(System.in);
    int select=1;
    for(;;)
    {
    shouye();
    do
    {
    select=input.nextInt();
    } while(select<1||select>4);
    switch(select)
    {
    case 1:scorein();break;
    case 2:scorechange();break;
    case 3:jisuan();break;
    case 4:back();break;
    default:System.out.println("该选项不存在!");
    }if(select==4) break;
    }

    }
    //录入成绩
    private static void scorein()
    {
    String a,b;Double c,d,e,f,g;
    int flag=0;
    Scanner input=new Scanner(System.in);

    System.out.println("***********************************************************");
    System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
    System.out.println(" 学生考试成绩录入 ");
    System.out.println("***********************************************************");
    System.out.println(" 请输入学生学号: ");
    a=input.next();
    System.out.println("***********************************************************");
    for(int i=0;i<5;i++)
    {
    if(A[i].get_stunumber().equals(a))
    {

    String t;
    do
    {

    jiemian(A[i]);
    System.out.println("请输入高数成绩:");
    c=input.nextDouble();A[i].set_mathematicsscore(c);
    jiemian(A[i]);System.out.println("请输入大学英语成绩");
    d=input.nextDouble();A[i].set_englishiscore(d);
    jiemian(A[i]);System.out.println("请输入计算机网络成绩");
    e=input.nextDouble();A[i].set_networkscore(e);

    jiemian(A[i]);System.out.println("请输入数据库成绩");
    f=input.nextDouble();A[i].set_databasescore(f);
    jiemian(A[i]);System.out.println("请输入软件工程成绩");
    g=input.nextDouble();A[i].set_softwarescore(g);
    jiemian(A[i]);
    System.out.println("该学生成绩已录入完毕,是否提交(Y/N) ");
    t=input.next();
    System.out.println("********************************************************** ");
    }while(t.equals("N"));
    flag=1;break;
    }
    }
    if(flag==0)
    {
    System.out.println("找不到该名学生。");

    }
    }

    //修改成绩
    private static void scorechange()
    {

    boolean bool=false;
    do
    {
    String a,b;

    Scanner sca=new Scanner(System.in);
    xiugai1();
    b=sca.next();
    for(int i=0;i<5;i++)
    {
    a=A[i].get_stunumber();
    if(a.equals(b))
    {
    String str;
    do
    {
    int x=0;
    xiugai2(A[i]);
    x=sca.nextInt();
    xiugai3(A[i], x);
    str=sca.next();
    }while(str.equals("N"));
    bool=true;
    break;

    }
    }
    if(bool==false)
    {
    System.out.println("找不到该名学生。");
    }
    }while(bool==false);
    }
    //计算绩点
    private static void jisuan()
    {
    Scanner sca=new Scanner(System.in);
    boolean bool=false;
    do
    {
    String a,b;
    jidian1();
    b=sca.next();
    for(int i=0;i<5;i++)
    {
    a=A[i].get_stunumber();
    if(a.equals(b))
    {
    String str;
    do
    {
    jidian2(A[i]);
    str=sca.next();
    }while(str.equals("N"));
    bool=true;
    break;
    }
    }
    if(bool==false)
    {
    System.out.println("找不到该名学生。");
    }
    }while(bool==false);

    }


    private static double jidian(double c)
    {
    double c1=0;
    if(c>=75)
    {
    if(c<90)
    {

    if(c<82)
    {
    if(c<78)
    {
    c1=2.7;
    }
    else
    {
    c1=3;
    }
    }
    else
    {
    if(c<85)
    {
    c1=3.3;
    }
    else
    {
    c1=3.7;
    }
    }
    }
    else
    {
    c1=4;
    }
    }
    else
    {
    if(c<66)
    {
    if(c<60)
    {
    c1=0;
    }
    else
    {
    if(c<64)
    {
    c1=1;
    }
    else
    {
    c1=1.5;
    }
    }
    }
    else
    {
    if(c<68)
    {
    c1=1.7;
    }
    else
    {
    if(c<72)
    {
    c1=2;
    }
    else
    {
    c1=2.3;
    }
    }
    }
    }
    return c1;

    } public static void xiugai1()
    {
    xiugai();
    System.out.print("请输入学生学号: ");
    }
    public static void xiugai2(ScoreInformation S)
    {
    xiugai();
    System.out.println(" 学生学号:"+S.get_stunumber());
    System.out.println(" 学生姓名:"+S.get_name());
    System.out.println(" 1 、高数成绩:"+S.get_mathematicsscore());
    System.out.println(" 2、大学英语成绩:"+S.get_englishiscore());
    System.out.println(" 3、 计算机网络成绩:"+S.get_networkscore());
    System.out.println(" 4、 数据库成绩:"+S.get_databasescore());
    System.out.println(" 5、 软件工程成绩:"+S.get_softwarescore());
    System.out.println("***********************************************************");
    System.out.print("请输入需要修改的成绩序号:");
    }
    public static void jidian1()
    {
    System.out.println("***********************************************************");
    System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
    System.out.println(" 学生考试成绩绩点计算界面 ");
    System.out.println("***********************************************************");
    System.out.print(" 请输入学生学号:");
    }
    public static void jidian2(ScoreInformation S)
    {
    double c1,d1,e1,f1,g1,p;
    c1=jidian(S.get_mathematicsscore());
    d1=jidian(S.get_englishiscore());
    e1=jidian(S.get_networkscore());
    f1=jidian(S.get_databasescore());
    g1=jidian(S.get_softwarescore());
    p=(c1*4+d1*3+e1*4+f1*3+g1*2)/16;
    System.out.println("***********************************************************");
    System.out.println(" 石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
    System.out.println(" 学生考试成绩绩点计算界面 ");
    System.out.println("***********************************************************");
    System.out.println(" 学生学号:"+S.get_stunumber());
    System.out.println(" 学生姓名:"+S.get_name());
    System.out.println(" 1 、高数成绩绩点:"+c1);
    System.out.println(" 2、大学英语成绩绩点:"+d1);
    System.out.println(" 3、 计算机网络成绩绩点:"+e1);
    System.out.println(" 4、 数据库成绩绩点:"+f1);
    System.out.println(" 5、 软件工程成绩绩点:"+g1);
    System.out.print(" 你的平均学分绩点为:");
    System.out.printf("%.2f",p);
    System.out.println();
    if(p>2)
    {
    System.out.println(" 提示信息:你的学分绩点已达到毕业要求!");
    }
    else
    {
    System.out.println(" 提示信息:你的学分绩点不满足毕业要求!");
    }
    System.out.print(" 是否返回系统主界面:(Y/N)");
    System.out.println("***********************************************************");
    }
    public static void xiugai3(ScoreInformation S,int x)

    {
    Scanner sca=new Scanner(System.in);
    double c1;
    xiugai();
    if(x==1)
    {
    System.out.println(" 学生学号:"+S.get_stunumber());
    System.out.println(" 学生姓名:"+S.get_name());
    System.out.println("请输入修改后的高数成绩:");

    c1=sca.nextDouble();
    S.set_mathematicsscore(c1);

    }
    if(x==2)
    {System.out.println(" 学生学号:"+S.get_stunumber());
    System.out.println(" 学生姓名:"+S.get_name());
    System.out.println("请输入修改后的大学英语成绩:");

    c1=sca.nextDouble();
    S.set_englishiscore(c1); System.out.println("***********************************************************");
    }
    if(x==3)
    {System.out.println("学生学号:"+S.get_stunumber());
    System.out.println("学生姓名:"+S.get_name());
    System.out.print("请输入修改后的计算机网络成绩:");

    c1=sca.nextDouble();
    S.set_networkscore(c1); System.out.println("***********************************************************");
    }
    if(x==4)
    {System.out.println("学生学号:"+S.get_stunumber());
    System.out.println("学生姓名:"+S.get_name());
    System.out.println("请输入修改后的数据库成绩:");

    c1=sca.nextDouble();
    S.set_databasescore(c1); System.out.println("***********************************************************");
    }
    if(x==5)
    {System.out.println("学生学号:"+S.get_stunumber());
    System.out.println("学生姓名:"+S.get_name());
    System.out.println("请输入修改后的软件工程成绩:");

    c1=sca.nextDouble();
    S.set_softwarescore(c1);System.out.println("***********************************************************");
    }
    xiugai();
    System.out.println(" 学生学号:"+S.get_stunumber());
    System.out.println(" 学生姓名:"+S.get_name());
    System.out.println(" 1 、高数成绩:"+S.get_mathematicsscore());
    System.out.println(" 2、大学英语成绩:"+S.get_englishiscore());
    System.out.println(" 3、 计算机网络成绩:"+S.get_networkscore());
    System.out.println(" 4、 数据库成绩:"+S.get_databasescore());
    System.out.println(" 5、 软件工程成绩:"+S.get_softwarescore());
    System.out.println("***********************************************************");
    System.out.println(" 该学生成绩已修改完毕,是否提交(Y/N)");
    System.out.println("********************************************************** ");
    }
    private static void xiugai()
    {
    System.out.println("***********************************************************");
    System.out.println("石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
    System.out.println("学生考试成绩录入界面 ");
    System.out.println("***********************************************************");
    }
    private static void jiemian(ScoreInformation q)
    {
    System.out.println("***********************************************************");
    System.out.println("石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
    System.out.println("学生考试成绩录入界面 ");
    System.out.println("*********************************************************** ");
    System.out.println("学生学号:"+q.get_stunumber());
    System.out.println("学生姓名:"+q.get_name());

    if(q.get_mathematicsscore()!=0.0)
    {
    System.out.println("高等数学成绩:"+q.get_mathematicsscore());

    }
    if(q.get_englishiscore()!=0.0)
    {System.out.println("大学英语成绩:"+q.get_englishiscore());


    }
    if(q.get_softwarescore()!=0.0)
    {
    System.out.println("软件工程成绩:"+q.get_softwarescore());

    }
    if(q.get_databasescore()!=0.0)
    {
    System.out.println("数据库成绩:"+q.get_databasescore());
    }
    if(q.get_networkscore()!=0)
    {
    System.out.println("计算机网络成绩:"+q.get_networkscore());


    }

    }
    private static void back()
    {
    System.out.println("***********************************************************");
    System.out.println("谢谢使用石家庄铁道大学软件工程系学生学籍管理系统 2019 版 ");
    System.out.println(" 制作人:张华锦");
    System.out.println("***********************************************************");
    }
    private static void shouye()
    {
    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("***********************************************************");
    }
    }

  • 相关阅读:
    构建之法读书笔记 第4章 两人合作
    ASE19 团队项目 alpha 阶段 Frontend 组 scrum9 记录
    ASE —— 第二次结对作业
    ASE —— 第一次结对作业
    高级软件工程 —— 第一周博客作业
    软工个人总结
    六月上团队项目心得
    团队项目心得
    结对编程收获
    结对作业——随机生成四则运算(Core 第7组)
  • 原文地址:https://www.cnblogs.com/zhjvvvvvv/p/11515529.html
Copyright © 2011-2022 走看看