1、高级语言程序设计(高级语言程序设计(2) 课程设计任务书课程设计任务书 题 目 学生成绩管理程序 学生姓名 学号 专业班级 设 计 内 容 与 要 求 【问题描述】 本学期我班共有 6 门课程,期末要对每个学生的成绩进行统计处理。 每个学生都有相同的信息,适合用 Java 的类来描述。Student 包含的信息 有学号、姓名和 6 科成绩(初等数论、经济学、数值计算、思政原理、Java 语言和抽象代数) 。定义一个 Student 类创建对应方法,实现对 Student 对 象的操作(增、删、改、查询、成绩排序、成绩统计等功能)供其对象调 用。前者可以定义为 Student 类的成员变量,后者
2、可以定义为 Student 类 的成员函数。 【软件功能】 1. 定义 Student 类。 2. 能进行学生信息和各科成绩信息的录入。 3. 能进行对 Student 对象的操作(增、删、改、查询、成绩排序、成绩统 计等功能) 。 5. 利用 swing实现良好的 GUI 界面。 6. 能响应鼠标或者键盘事件。 【基本要求】 1. 对 Student 对象的操作(增、删、改、查询、成绩排序、成绩统计等功 能)依靠编写的成员方法实现。 2. 采用用户界面采用图形用户界面,响应鼠标事件。 3. 编写主方法, 对所编写的 Student 类进行全面测试。 需要输入的 Student 数据通过键盘输
3、入,同时显示在屏幕上。得到的处理结果数据通过 I/O 流 写入磁盘文件保存,同时显示在屏幕上。 4. 源程序中要有充分的注释,报告中要有详细的流程图和文字材料。 5. 运行的结果以及图形用户界面要进行屏幕拷贝,插入报告中。 【提交成果】 1. “ 高级语言程序设计(2)课程设计任务书”和“ 高级语言程序设计 (2)课程设计报告”打印件各一份; 2. 先将上面两项内容的 word 文档,通过电子邮件交到指导教师,待许可 后,打印装袋。 起止时间 2012 年 12 月 24 日 至 2012 年 12 月 30 日 指导教师签名 李元觉 2012 年 12 月 22 日 系(教研室)主任签名 郝
4、华宁 2012 年 12 月 22 日 学生签名 年 月 日 高级语言程序设计(高级语言程序设计(2 2) 课程设计报告) 课程设计报告 1 1、 程序设计说明书程序设计说明书 【设计题目】 学生成绩管理程序 【问题描述】 本学期我班共有 6 门课程,期末要对每个学生的成绩进行统计处理。每个学生 都有相同的信息,适合用 Java 的类来描述。Student 包含的信息有学号、姓名和 6 科成绩(初等数论、经济学、数值计算、思政原理、Java 语言和抽象代数) 。定义 一个 Student 类创建对应方法,实现对 Student 对象的操作(增、删、改、查询、 成绩排序、成绩统计等功能)供其对象
5、调用。前者可以定义为 Student 类的成员变 量,后者可以定义为 Student 类的成员函数。 【软件功能】 1. 定义 Student 类。 2. 能进行学生信息和各科成绩信息的录入。 3. 能进行对 Student 对象的操作(增、删、改、查询、成绩排序、成绩统计等功能) 。 5. 利用 swing实现良好的 GUI 界面。 6. 能响应鼠标或者键盘事件。 7. 为学成成绩信息建立文件操作信息管理和相应的文件源,可以方便的调用上一 保存的数据。还可以对数据进行其他操作。 【算法思想】 1.创建 Student 类,把学生的信息和成绩通过这个类对应到每个学生。既把学生的 基本情况封装到
6、这个 Student 类中。 2.创建变长数组列表 ArrayList ,将所有的学生信息按每个人为单位放 入到这个数组中,利用数组的循环便于对学生成绩的各种操作。 3.创建StuC类, Student管理类StuC创建对应方法, 实现对Student对象的操作 (增、 删、改、查询、成绩排序、成绩统计等功能)供其对象调用。既把所有的对学生成 绩的操作处理方法封装到这个类中。 4.创建文件流对信息的输入输出管理。保存上次进行操作的信息,为程序建立存贮 的数据源,可以方便的调用和修改。 5.为登陆界面插入图片用 MyPanel1 的类来实现,为教师主界面和学生主界面添加 图片背景。 6.把每个学生的信息看成是一个一维数组, 通过对每个学生数组的每门课程成绩的 访问求出每个人的总成绩。 7.利用每个学生的总成绩利用冒泡排序法对学生的成绩从高到底排序, 统计输出时 按新排好的成绩由高到低输出统计结果。 【类的设计】 1. Student 类 Student 2. StuC 类,Student 管理类 StuC 创建对应方法,实现对 Studen