- 1、本文档共45页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
学生管理系统-java课程设计
《Java程序设计》课程期末作业
题 目 学生成绩管理系统
学 院 信息科学与工程学院
专 业 计算机科学与技术
班 别 09级3班
学 号 200901051624
姓 名
2011年12月17日
目录
一、课程题目: 3
二、软件的功能描述 3
三、系统的UML类图 4
(一)用况图 4
(二)类之间的图 4
(三)数据流程图 6
四、功能调试 6
五、具体代码 15
一、课程题目:
设计一个学生Java成绩管理系统(可以不使用界面;如果使用,则界面使用AWT或SWING),要求:
增添、删除、修改学生基本信息(基本信息包含学生的学号、姓名、专业分数等信息);
计算每门课的平均成绩;
统计优秀、良好、中等、及格、不及格的人数百分比,并以柱状图、饼图呈现【说明:可以使用SWING、AWT自己绘制;也可以使用开源类库,如JFreeChar】
按学号查询学生及成绩;
按照成绩分数排序
二、软件的功能描述
能够实现学生信息的增删改查四项基本的操作。此程序允许出现重名的现象出现,另外在删除的时候提供了删除所有重名同学的信息和删除指定学号的学生的两种方法,更加贴近现实。
能够将程序中的数据存储到data.txt文件中,另外能在程序中通过Swing中的table组件将文件中的内容进行打印出来。可以直观的看到文件内部的结果。
此程序给出了“按照学号排序”“按照平均成绩排序”“按照英语成绩排序”“按照数学成绩排序”“按照专业成绩排序”等五个排序方法。
此程序在查询的同时又能同时显示出三科成绩的饼图分布,饼图上标出了四个成绩段的人数和百分比。更加方便直观的体现出了单科的成绩分布。
程序有一个增加的功能。能够将所有同学的信息用三维柱状图的形式全部呈现出来,能够进行纵向、横向两种比较方式。方便人性化的进行成绩的比较。
三、系统的UML类图
(一)用况图
(二)类之间的图
①student类
②sort类
(三)数据流程图
四、功能调试
1,主界面
2,新建学生信息
3,查询成绩页面
4,修改成绩
5,删除成绩
第二种方法
打印文件内容
三科的排序
平均成绩排序:
9,三科的饼图分布
10,所有同学的成绩三维柱状图分析
五、具体代码
1,主界面代码(Grade.java)
public class Grade {
// 定义主框架
private JFrame frame = new JFrame("学生成绩管理系统"); // 定义菜单栏
private JMenuBar Bar = new JMenuBar(); // 定义菜单
private JMenu JMedit = new JMenu("编辑");
private JMenu JMcount = new JMenu("统计");
private JMenu JMhelp = new JMenu("数据"); // 定义菜单项
private JMenuItem JMIcreate = new JMenuItem("新建");
private JMenuItem JMImodify = new JMenuItem("修改");
private JMenuItem JMIsearch = new JMenuItem("寻找");
private JMenuItem JMIdelete = new JMenuItem("删除");
private JMenuItem JMIall = new JMenuItem("成绩排序");
private JMenuItem JMIgraphics = new JMenuItem("图形统计");
private JMenuItem JMIhelp = new JMenuItem("文件信息");// 定义文本标签
private JLabel text = new JLabel();
private JLabel text1 = new JLabel();
private JLabel text2 = new JLabel();
private JLabel text3 = new JLabel();
private JLabel text4 = new JLabel(); // 定义面板
private Container con = frame.getContentPan
文档评论(0)