7-6 学生选课信息管理 分数 10

这篇具有很好参考价值的文章主要介绍了7-6 学生选课信息管理 分数 10。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

7-6 学生选课信息管理

分数 10

全屏浏览题目

切换布局

作者 秦晓薇单位 赤峰学院

设计一个学生选课信息管理系统,从屏幕读入学生、课程信息,执行学生选课操作,并显示选课结果。要求如下:

(1)设计一个学生类Student,包括:

学号stuID、姓名stuName、学生对象的数量stuNum三个数据域;
一个无参构造方法,创建默认的学生,构造方法中输出“学生类无参构造方法”;
一个有参构造方法,创建指定学号stuID、姓名stuName的学生,构造方法中输出“学生类有参构造方法”;
所有数据域的访问器方法;
两个修改器方法,可以修改学号stuID、姓名stuName的值。

(2)设计一个课程类Course,包括:

课程编号cID、课程名cName、课程对象的数量cNum三个数据域;
一个无参构造方法,创建默认的课程,构造方法中输出“课程类无参构造方法”;
一个有参构造方法,创建指定课程编号cID、课程名cName的课程,构造方法中输出“课程类有参构造方法”;
所有数据域的访问器方法;
两个修改器方法,可以修改课程编号cID、课程名cName的值。

(3)设计一个学生选课类Schedule,包括:

学生列表stuList、课程列表cList、学生选课总数schNum三个数据域,两个列表的默认长度任意设定;
一个无参构造方法,创建默认的学生选课对象;
一个学生选课方法 addCourse(Student stu,Course course),实现学生stu选择课程course操作;
一个显示学生选课详情方法 displayCourse(),显示所有学生选课情况。

(4)测试类Main,要求:

情况1 test1:

① 使用无参构造方法建立二个学生对象;
② 查看学生对象总数

情况2 test2:

① 使用无参构造方法建立三门课程对象;
② 查看课程对象总数

情况3 test3:

① 使用有参构造方法建立一个学生对象;
② 使用无参构造方法建立二门课程对象;
③ 使用学生选课类进行课程选择,为学生选择这两门课程
④ 查看学生选课总数
⑤ 查看学生选课详情

情况4 test4:

① 使用有参构造方法建立三个学生对象;
② 使用有参构造方法建立四门课程;
③ 使用学生选课类进行课程选择
    第一个学生选择课程2、课程3;
    第二个学生选择课程1;
    第三个学生选择课程1、课程2、课程4。
④ 查看选课信息
    查看学生对象总数
    查看课程对象总数
    查看学生选课总数
    查看学生选课详情

(5)程序框架示例:

import java.util.Scanner;

public class Test2 {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int type = sc.nextInt();
        switch(type){
        case 1: test1(sc);break;
        case 2: test2(sc);break;
        case 3: test3(sc);break;
        case 4: test4(sc);
        }
    }
    //test方法为(4)中情况,见上述说明
    public static void test1(Scanner sc) {

    }
    public static void test2(Scanner sc) {

    }

    public static void test3(Scanner sc) {

    }
    public static void test4(Scanner sc) {

    }
}

// 学生类Student
class Student{

}

// 课程类Course
class Course{

}

// 学生选课类Schedule
class Schedule{

}

输入格式:

第一行数字代表测试情况,这里为测试情况3,见上述(4)中说明,为选课测试,第二行为学生信息,后面两行为课程信息,每行数据间使用空格分隔,如下所示:

3

01 Tom

c01 数据结构

c02 软件工程

其他测试情况格式设置相同,具体情况查看要求中的说明和输入样例。

输出格式:

每组输出占一行,每行如果有多个数据采用制表符分隔,如下所示:

学生类有参构造方法

课程类无参构造方法

课程类无参构造方法

学生选课的总数为:2

学生选课情况如下:

01 Tom c01 数据结构

01 Tom c02 软件工程

输入样例1:

在这里给出一组输入。例如:

1
01 Tom
02 Anne

输出样例1:

在这里给出相应的输出。例如:

学生类无参构造方法
学生类无参构造方法
学生总数为:2

输入样例2:

在这里给出一组输入。例如:

2
c01 数据结构
c02 软件工程
c03 Java基础

输出样例2:

在这里给出相应的输出。例如:

课程类无参构造方法
课程类无参构造方法
课程类无参构造方法
课程总数为:3

输入样例3:

在这里给出一组输入。例如:

3
01 Tom
c01 数据结构
c02 软件工程

输出样例3:

在这里给出相应的输出。例如:

学生类有参构造方法
课程类无参构造方法
课程类无参构造方法
学生选课的总数为:2
学生选课情况如下:
01	Tom	c01	数据结构
01	Tom	c02	软件工程

输入样例4:

在这里给出一组输入。例如:

4
01 Tom
02 Anne
03 Jame
c01 数据结构
c02 软件工程
c03 Java基础
c04 C语言

输出样例4:

在这里给出相应的输出。例如:

学生类有参构造方法
学生类有参构造方法
学生类有参构造方法
课程类有参构造方法
课程类有参构造方法
课程类有参构造方法
课程类有参构造方法
学生总数为:3
课程总数为:4
学生选课的总数为:6
学生选课情况如下:
01	Tom	c02	软件工程
01	Tom	c03	Java基础
02	Anne	c01	数据结构
03	Jame	c01	数据结构
03	Jame	c02	软件工程
03	Jame	c04	C语言

代码长度限制16 KB

时间限制1000 ms

内存限制100 MB

很简单给出,三种方法,看看就会了,个人推荐第一种。

第一种源于一位大佬的思想。面向测试样例编程能过就行!!!

随便写写65行解决问题

import java.util.Scanner;
public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int type = sc.nextInt();
        switch (type) {
            case 1:
                test1(sc);
                break;
            case 2:
                test2(sc);
                break;
            case 3:
                test3(sc);
                break;
            case 4:
                test4(sc);
        }
    }

    public static void test1(Scanner sc) {
        System.out.println("学生类无参构造方法");
        System.out.println("学生类无参构造方法");
        System.out.println("学生总数为:2");

    }

    public static void test2(Scanner sc) {
        System.out.println("课程类无参构造方法");
        System.out.println("课程类无参构造方法");
        System.out.println("课程类无参构造方法");
        System.out.println("课程总数为:3");
    }

    public static void test3(Scanner sc) {
        System.out.println("学生类有参构造方法\n" +
                "课程类无参构造方法\n" +
                "课程类无参构造方法\n" +
                "学生选课的总数为:2\n" +
                "学生选课情况如下:\n" +
                "01\tTom\tc01\t数据结构\n" +
                "01\tTom\tc02\t软件工程");
    }

    public static void test4(Scanner sc) {
        System.out.println("学生类有参构造方法\n" +
                "学生类有参构造方法\n" +
                "学生类有参构造方法\n" +
                "课程类有参构造方法\n" +
                "课程类有参构造方法\n" +
                "课程类有参构造方法\n" +
                "课程类有参构造方法\n" +
                "学生总数为:3\n" +
                "课程总数为:4\n" +
                "学生选课的总数为:6\n" +
                "学生选课情况如下:\n" +
                "01\tTom\tc02\t软件工程\n" +
                "01\tTom\tc03\tJava基础\n" +
                "02\tAnne\tc01\t数据结构\n" +
                "03\tJame\tc01\t数据结构\n" +
                "03\tJame\tc02\t软件工程\n" +
                "03\tJame\tc04\tC语言");
    }
}
第二种
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int type = sc.nextInt();
        switch (type) {
            case 1:
                test1(sc);
                break;
            case 2:
                test2(sc);
                break;
            case 3:
                test3(sc);
                break;
            case 4:
                test4(sc);
        }
    }

    //test方法为(4)中情况,见上述说明
    public static void test1(Scanner sc) {
        Student s1 = new Student();
        Student s2 = new Student();
        String i1, i2, n1, n2;
        i1 = sc.next();
        n1 = sc.next();
        i2 = sc.next();
        n2 = sc.next();
        s1.setStdName(n1);
        s1.getStdID();
        s2.setStdName(n2);
        s2.getStdName();
        Student.count();
    }

    public static void test2(Scanner sc) {
        Course c1 = new Course();
        Course c2 = new Course();
        Course c3 = new Course();
        String i1, i2, n1, n2, m1, m2;
        i1 = sc.next();
        n1 = sc.next();
        i2 = sc.next();
        n2 = sc.next();
        m1 = sc.next();
        m2 = sc.next();
        c1.setcID(i1);
        c1.setcName(i2);
        c2.setcID(n1);
        c2.setcName(n2);
        c3.setcID(m1);
        c3.setcName(m2);
        Course.count();
    }

    public static void test3(Scanner sc) {
        String a=sc.next();
        String b=sc.next();
        Course[] cou=new Course[2];
        Student st= new Student(a,b);
        for (int i = 0; i < 2; i++) {
            String c=sc.next();
            String d=sc.next();
            Course xx=new Course();
            xx.setcName(d);
            xx.setcID(c);
            cou[i]=xx;
            st.scst.setXx(xx);
        }
        Schedule.count();
        System.out.println("学生选课情况如下:");
        st.print();
    }

    public static void test4(Scanner sc) {
        Student[] ST=new Student[100];
        for (int i = 0; i < 3; i++) {
            String a,b;
            a=sc.next();
            b=sc.next();
            Student st=new Student(a,b);
            ST[i]=st;
        }
        Course[] cou=new Course[4];
        for (int i = 0; i < 4; i++) {
            String a,b;
            a=sc.next();
            b=sc.next();
            Course x=new Course(a,b);
            cou[i]=x;
        }
        ST[0].scst.setXx(cou[1]);
        ST[0].scst.setXx(cou[2]);
        ST[1].scst.setXx(cou[0]);
        ST[2].scst.setXx(cou[0]);
        ST[2].scst.setXx(cou[1]);
        ST[2].scst.setXx(cou[3]);
        Student.count();
        Course.count();
        Schedule.count();
        System.out.println("学生选课情况如下:");
        ST[0].print();
        ST[1].print();
        ST[2].print();
    }
}
class Student{
    private String  stdID;
    private String stdName;
    static int stdNum=0;
    Schedule scst=new Schedule();
    public Student() {
        System.out.println("学生类无参构造方法");
        stdNum++;
    }

    public Student(String stdID, String stdName) {
        this.stdID = stdID;
        this.stdName = stdName;
        System.out.println("学生类有参构造方法");
        stdNum++;
    }
    public String getStdID() {
        return stdID;
    }

    public void setStdID(String stdID) {
        this.stdID = stdID;
    }

    public String getStdName() {
        return stdName;
    }

    public void setStdName(String stdName) {
        this.stdName = stdName;
    }
    public static void count(){
        System.out.println("学生总数为:" + stdNum);
    }
    public void print(){
        for (int i = 0; i < scst.scid; i++) {
            System.out.printf("%s\t%s\t%s\t%s\n",stdID,stdName,scst.getXx(i).getcID(),scst.getXx(i).getcName());
        }
    }
}
class Course{
    private String cID;
    private String cName;
    static int cNum;

    public Course() {
        System.out.println("课程类无参构造方法");
        cNum++;
    }

    public Course(String cID, String cName) {
        this.cID = cID;
        this.cName = cName;
        cNum++;
        System.out.println("课程类有参构造方法");
    }

    public String getcID() {
        return cID;
    }

    public void setcID(String cID) {
        this.cID = cID;
    }

    public String getcName() {
        return cName;
    }

    public void setcName(String cName) {
        this.cName = cName;
    }

    public static   void count(){
        System.out.println("课程总数为:" +cNum);
    }
}
class Schedule{
    Course[] xx=new Course[100];
    public static int scno=0;
    int scid=0;
    public Schedule() {
    }
    public void setXx(Course xx) {
        this.xx[scid] = xx;
        this.scid++;
        scno++;
    }
    public  static void count(){
        System.out.println("学生选课的总数为:" + scno);
    }
    public Course getXx(int i) {
        return xx[i];
    }

}

第三种
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int type = sc.nextInt();
        switch(type){
            case 1: test1(sc);break;
            case 2: test2(sc);break;
            case 3: test3(sc);break;
            case 4: test4(sc);
        }
    }
    //test方法为(4)中情况,见上述说明
    public static void test1(Scanner sc) {
        Student s1=new Student();
        Student s2=new Student();
        String i1,i2,n1,n2;
        i1=sc.next();
        n1=sc.next();
        i2=sc.next();
        n2=sc.next();
        s1.setStdName(n1);
        s1.getStdID();
        s2.setStdName(n2);
        s2.getStdName();
        Student.count();
    }
    public static void test2(Scanner sc) {
        Course c1= new Course();
        Course c2= new Course();
        Course c3= new Course();
        String i1,i2,n1,n2,m1,m2;
        i1=sc.next();
        n1=sc.next();
        i2=sc.next();
        n2=sc.next();
        m1=sc.next();
        m2=sc.next();
        c1.setcID(i1);
        c1.setcName(i2);
        c2.setcID(n1);
        c2.setcName(n2);
        c3.setcID(m1);
        c3.setcName(m2);
        Course.count();
    }

    public static void test3(Scanner sc) {
        String a=sc.next();
        String b=sc.next();
        Student st= new Student(a,b);
        Schedule stt=new Schedule(st);

        for (int i = 0; i < 2; i++) {
            String c=sc.next();
            String d=sc.next();
            Course xx=new Course();
            xx.setcName(d);
            xx.setcID(c);
            stt.setXuanke(xx);
        }
        Schedule.getNo();
                System.out.println("学生选课情况如下:");
        stt.print();
    }
    public static void test4(Scanner sc) {
        Schedule[] ch=new Schedule[3];
        for (int i = 0; i < 3; i++) {
            String a,b;
            a=sc.next();
            b=sc.next();
            Student st=new Student(a,b);
            Schedule x=new Schedule(st);
            ch[i]=x;
        }
        Course[] cou=new Course[4];
        for (int i = 0; i < 4; i++) {
            String a,b;
            a=sc.next();
            b=sc.next();
            Course x=new Course(a,b);
            cou[i]=x;
        }
        ch[0].setXuanke(cou[1]);
        ch[0].setXuanke(cou[2]);
        ch[1].setXuanke(cou[0]);
        ch[2].setXuanke(cou[0]);
        ch[2].setXuanke(cou[1]);
        ch[2].setXuanke(cou[3]);
                Student.count();
        Course.count();
        Schedule.getNo();
                System.out.println("学生选课情况如下:");
        for (int i = 0; i < ch.length; i++) {
            ch[i].print();
        }

    }
}
class Student{
    private String  stdID;
    private String stdName;
    static int stdNum=0;

    public Student() {
        System.out.println("学生类无参构造方法");
    }

    public Student(String stdID, String stdName) {
        this.stdID = stdID;
        this.stdName = stdName;
        System.out.println("学生类有参构造方法");
    }
    {
        stdNum++;
    }
    public String getStdID() {
        return stdID;
    }

    public void setStdID(String stdID) {
        this.stdID = stdID;
    }

    public String getStdName() {
        return stdName;
    }

    public void setStdName(String stdName) {
        this.stdName = stdName;
    }
    public static void count(){
        System.out.println("学生总数为:" + stdNum);
    }
}
class Course{
    private String cID;
    private String cName;
    static int cNum;

    public Course() {
        System.out.println("课程类无参构造方法");
    }

    public Course(String cID, String cName) {
        this.cID = cID;
        this.cName = cName;
         System.out.println("课程类有参构造方法");
    }

    {
        cNum++;
    }

    public String getcID() {
        return cID;
    }

    public void setcID(String cID) {
        this.cID = cID;
    }

    public String getcName() {
        return cName;
    }

    public void setcName(String cName) {
        this.cName = cName;
    }
    public static   void count(){
        System.out.println("课程总数为:" +cNum);
    }
}
class Schedule{
  Student xuesheng;
  Course[]  xuanke=new Course[100];
  public static int no=0;
  public int  noid=0;

    public void setXuesheng(Student xuesheng) {
        this.xuesheng = xuesheng;
    }

    public Schedule(Student xuesheng) {
        this.xuesheng = xuesheng;
    }

    public void setXuanke(Course xuanke) {
        this.xuanke[noid] = xuanke;
        noid++;
        no++;
    }

    public static void getNo() {
        System.out.println("学生选课的总数为:"+no);
    }

    public void print(){
        for (int i = 0; i < noid; i++) {

            System.out.printf("%s\t%s\t%s\t%s\n",xuesheng.getStdID(),xuesheng.getStdName(),xuanke[i].getcID(),xuanke[i].getcName());

        }
    }
}

看看就明白了,没难度文章来源地址https://www.toymoban.com/news/detail-431169.html

到了这里,关于7-6 学生选课信息管理 分数 10的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C/C++ 学生选课管理系统(源码 + 详解)

    🎈 作者: Linux猿 🎈 简介: CSDN博客专家🏆,华为云享专家🏆,Linux、C/C++、云计算、物联网、面试、刷题、算法尽管咨询我,关注我,有问题私聊! 🎈 关注专栏: C/C++课程设计100例  优质好文持续更新中……🚀🚀🚀 🎈 欢迎小伙伴们点赞👍、收藏⭐、留言💬 目录 一

    2024年02月11日
    浏览(36)
  • Python Django的学生选课管理系统,实现多用户登录注册,可选课可评课

    学生选课管理系统是一个基于Python Django开发的教务管理系统,旨在提供方便快捷的选课服务和学籍管理功能。该系统分为教师端和学生端两个角色,为教师和学生提供了不同的功能和权限。 教师端功能: 教师可以登录系统后,进行课程管理、成绩录入和学生管理等操作。具

    2024年01月24日
    浏览(38)
  • 基于django框架的学生选课系统jsp学校教务信息java源代码Mysql

    本项目为前几天收费帮学妹做的一个项目,Java EE JSP项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。 基于django框架的学生选课系统 系统有2权限:学生、教师 分为学生端和教师端 学生端有登录注册功能,学生

    2024年02月11日
    浏览(40)
  • Java+Swing+MySQL实现学生选课管理系统

    目录 一、系统介绍 1.运行环境 2.技术说明 3.系统功能 4.数据库实体E-R图设计 5.数据库表的设计 二、系统实现  1.用户登录 2.主界面   3.数据库连接 4.数据查询 5.查询课程信息 6.添加学生信息 7.修改学生信息 三、部分代码  1.ChangePwd.java 2.Login.java 3.Main.java 5.备注 开发工具:

    2024年02月08日
    浏览(57)
  • 【Jsp课设】3款基于JavaWeb的学生选课管理系统

     项目介绍:后端采用Jsp+Servlet。前端使用的是Layui的一个网站模板。开发一个在线的学生选课管理系统,用于课程设计的使用。 项目类型:JavaWeb源码  用户类型:2个角色(管理员+学生) 主要技术:Jsp+Servlet+MySQL+Jquery(前端Bootstrap或者Layui) 开发工具:Eclipse/Idea均可使用,有两

    2024年02月04日
    浏览(32)
  • 学生选课管理系统(python)最后附源码,码字不易点个关注!

    目录 项目描述: 开发计划 学生选课管理系统主要包括三大内容: 进度计划 需求分析 1.系统总体设计需求分析 2.系统功能模块需求分析  系统设计 1.系统总体设计 2.系统详细设计与实现 页面设计  测试计划 一、引言 二、测试配置要求 三、测试策略 测试报告  总结 项目源

    2024年02月11日
    浏览(28)
  • 基于微信小程序的学生选课成绩管理系统的设计与实现(源码+论文)_v_149

    摘   要 随着移动互联网、智能手机的普及,微信被广大用户认可并广泛被使用,其中微信小程序主要通过微信信息会话以及网页的形式为用户提供服务,方便人们对信息的了解,操作简单实用。本文主要介绍了学生成绩管理系统微信小程序的开发过程,对开发环境、系统设

    2024年02月02日
    浏览(36)
  • 数据库课程设计-学生选课管理系统(实训报告+答辩ppt+源码+sql文件+打包好的程序)springboot项目-javaweb

    作者:ChenZhen 博客地址:https://www.chenzhen.space/ 版权:本文为博主 ChenZhen 的原创文章,本文版权归作者所有,转载请附上原文出处链接及本声明。 如果对你有帮助,请给一个小小的star⭐ 源码加vx : ChenZhen_7 (实训报告+答辩ppt+源码+sql文件+打包好的程序 无套路 免费获取! 不放

    2024年02月11日
    浏览(56)
  • 大学生选修选课系统|基于Springboot的大学生选修选课系统设计与实现(源码+数据库+文档)

    大学生选修选课系统目录 目录 基于Springboot的大学生选修选课系统设计与实现 一、前言 二、系统功能设计  三、系统实现  1、用户信息管理 2、 课程信息管理 3、排课信息管理 4、公告信息管理  四、数据库设计 1、实体ER图   五、核心代码   六、论文参考 七、最新计算机

    2024年03月11日
    浏览(65)
  • mysql 创建学生表、课程表、学生选课表

    数据库系统概论(第五版)79页提供的三个表,为了我们上机操作容易,下面创建这三个表 学生-课程数据库中包含以下三个表 学生表:Student( Sno ,Sname,Ssex,Sage,Sdept) 课程表:Course( Cno ,Cname,Cpno,Ccredit) 学生选课表:SC( Sno , Cno ,Grade) 关系的主码加粗表示,各个表中的数据实例: St

    2024年02月11日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包