logo资料库

Java 课程设计 学生成绩分析程序的设计.doc

第1页 / 共19页
第2页 / 共19页
第3页 / 共19页
第4页 / 共19页
第5页 / 共19页
第6页 / 共19页
第7页 / 共19页
第8页 / 共19页
资料共19页,剩余部分请下载后查看
目 录
引 言
设计目的
设计任务
设计要求
1、需求分析
1.1需求分析
1.2 功能设计
2、概要设计
2.1程序设计思路
2.2程序中类与方法的说明
2.3程序相关说明
2. 3. 1运用缓冲流来读取数据
2. 3. 2捕获异常
2. 3. 3保存对象数据
2. 3. 4主函数
3、程序详细设计与分析
3.1初始化组件
3.2异常处理
4、测试分析
4.1编写目的
4.2背景说明  被测试程序的名称:学生成绩分析程序  测试环境与实际运行环境之间存在一些差异造
4.3术语
4.4参考资料 Java中的构造方法、异常类。
4.5分析摘要
4.6评价
5、源程序清单
6、课程设计总结
6.1心得体会
6.2设计过程中的难点和存在的问题
7、参考文献
8、附录
8.1完整代码
8.2程序流程图
交通运输学院课程设计 目 录 引言............................................................................................................................................ 2 设计目的............................................................................................................................. 2 设计任务............................................................................................................................. 2 设计要求............................................................................................................................. 2 1、需求分析.............................................................................................................................. 3 1.1 需求分析....................................................................................................................... 3 1.2 功能设计...................................................................................................................... 3 2、概要设计.............................................................................................................................. 3 2.1 程序设计思路............................................................................................................... 3 2.2 程序中类与方法的说明............................................................................................... 4 2.3 程序相关说明............................................................................................................... 4 2. 3. 1 运用缓冲流来读取数据................................................................................... 4 2. 3. 2 捕获异常........................................................................................................... 5 2. 3. 3 保存对象数据................................................................................................... 6 2. 3. 4 主函数............................................................................................................... 6 3、程序详细设计与分析.......................................................................................................... 8 3.1 初始化组件................................................................................................................... 8 3.2 异常处理....................................................................................................................... 8 4、测试分析.............................................................................................................................. 9 4.1 编写目的....................................................................................................................... 9 4.2 背景说明....................................................................................................................... 9 4.3 术语............................................................................................................................... 9 4.4 参考资料....................................................................................................................... 9 4.5 分析摘要....................................................................................................................... 9 4.6 评价............................................................................................................................. 10 5、源程序清单........................................................................................................................ 10 6、课程设计总结.................................................................................................................... 10 6.1 心得体会..................................................................................................................... 10 6.2 设计过程中的难点和存在的问题............................................................................. 10 7、参考文献............................................................................................................................ 12 8、附录.................................................................................................................................... 13 8.1 完整代码..................................................................................................................... 14 8.2 程序流程图................................................................................................................. 17 1
交通运输学院课程设计 引 言 设计目的 巩固和提高一学期来对Java的学习,提供了一个既动手又动脑,独立实践的机会,将 课本上的理论知识和实际有机的结合起来,锻炼分析解决实际问题的能力。提高适应实际, 实践编程的能力,同时随着社会的进步和科学技术的不断提高,尤其在进入二十一世纪以 来,计算机科学发展迅猛,日趋成熟,其强大的功能已被人们深刻认识,它已进入人类社 会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生成 绩信息进行分析管理,有着手工管理所无法比拟的优点。 设计任务 学生成绩分析系统能够方便用户快速、准确处理学生的成绩,得到想要的结果数据并能将学 生的信息以文档的形式保存。本文介绍了简易学生成绩分析系统在 MyEclipse6.0.1 环境下的实现 过程:数据的读取,数据的输出,按照各种要求计算出各种数据。。本系统的主要功能有全班学生 成绩的读取、分析、显示,能计算出各分数段的人数以及全班的通过率,和保存信息到文件以及 从文件中读取信息等功能。 设计要求 在本程序设计中,因为需要开发的是一个简易的学生成绩分析程序,规模较小,内容较少, 所以选择了适合初学者使用的 MyEclipse 开发工具。 2
交通运输学院课程设计 Java 课 程 设 计 ——学生成绩分析程序的设计 1、需求分析 1.1 需求分析 随着科学技术的发展,计算机管理在日常生活中的地位变得越来越重要。它能够代替人做各 种重复、繁琐的劳动,并且拥有操作简单、可信度好、不易出错等优点,大大减少了不必要的人 力消耗,提高个人的工作效率。学生成绩分析系统是每个教师必须面临的问题,所以,如何开发 一个应用方便、界面友好、容易操作、数据安全性好的成绩分析系统就成为非常重要的技术问题。 学生成绩分析系统的设计与实现,是在学校数据库的基础上,只对一个教学班学生成绩进行 分析计算的一个应用系统,是对学校教师管理成绩的帮助,主要是针对任课教师的需要,主要包 括以下三个方面:数据的读入、数据的输出、计算等。 1.2 功能设计 通过读取保存在文本文档中的学生成绩,然后再利用程序进行计算所需要的信息,最后将所 得结果保存为 txt 文件。 2、概要设计 2.1 程序设计思路 创建一个 Reader 类 定义构造方法 Reader() 在 主 函 数 中 创 建 Reader 类的对象并调用构造方法 在 Reader 方法中读取文 本文件、计算所需数据 图 1 程序设计思路 3
交通运输学院课程设计 2.2 程序中类与方法的说明 表 1 程序中所用到的类 类名称 功能 T7_ScoreOfStudent 主类 Reader 读取文本、计算所需信息、同时将 IOException BufferedReader Scanner 方法名称 Reader() 结果保存在指定文件中 当发生某种 I/O 异常时,抛出此异常 缓冲指定文件的输入 读入一个文件进入流 表 2 程序中所用到的方法 功能 构造方法 parseInt(String str2) 将形参 srt2 转化为整数 FileReader() substring() 读取字符文件 截取字符串中一段,一个参数时,参数是指截取 的起始位置,两个参数时,第一个是起始位置, 第二个是子串的长度 printStackTrace() 在命令行打印异常信息在程序中出错的位置及 PrintWriter() 写入数据同时对写入的数据进行格式化 原因 2.3 程序相关说明 2. 3. 1 运用缓冲流来读取数据 BufferedReader in=new BufferedReader(new FileReader("D:\\java\\chengji.txt")); for(int i=0;i
交通运输学院课程设计 System.out.println(str2); while(j
交通运输学院课程设计 in.close(); }catch(IOException e){//捕获IO异常 e.printStackTrace();} 2. 3. 3 保存对象数据 果要保存和读取整个对象,则需要创建一些存储对象成员变量和读取成员变量的方法,而且对 象中的成员变量最好能够自动地被保存和读取。Java 支持将对象作为一个整体通过流进行传输和存 储,但必须将 ObjectInputStream 和 ObjectOutputStream 两个类与接口 Serializable 结合起来使用才能 保证有效地存储和读取对象。 System.out.println("请输入要保存文件的文件名:"); //输入要保存文件的文件名 不要扩展名 Scanner in3 = new Scanner(System.in); String fn=in3.next(); try{ File f=new File("D:\\"+fn+".txt"); PrintWriter pw=new PrintWriter(f);// 将 所 得 分 析 结 果 保 存 到 指 定 pw.write("该平均成绩:"+Math.round(average)+",最高分:"+max+",最低 的.txt文件中 分:"+min+"\r\n"); pw.write("通过率为:" + Math.round(p * 100) + "%"+"\r\n"); pw.write("各分数段的人数分布如下:\r\n"); pw.write("0——59分的人数为:"+n1+"\r\n"); pw.write("60——69分的人数为:"+n2+"\r\n"); pw.write("70——79分的人数为:"+n3+"\r\n"); pw.write("80——89分的人数为:"+n4+"\r\n"); pw.write("90——100分的人数为:"+n5+"\r\n"); pw.close(); }catch(IOException e){ e.printStackTrace(); } 2. 3. 4 主函数 public static void main(String args[]){ Reader ps=new Reader(); ps.Reader(); } 在主函数中 new 出一个 Reader 类的对象 ps,然后通过这个对象调用构造方法来实现所得结果。 2.4 程序运行界面 6
交通运输学院课程设计 图 2 未输入文件名时的运行结果图 图 3 未输入文件名时的 D 盘 图 4 输入要保存的文件名时 图 5 输入要保存的文件名时 D 盘的变化 图 6 记事本里的内容 首次运行是的结果如图 2,在输入要保存的文件名时(以记事本的形式保存)的结 果图为图 4,输入后回车,在 D 盘中自动生成一个记事本文件,且文件里面的内容是分 析结果,如图 6。 7
交通运输学院课程设计 3、程序详细设计与分析 3.1 初始化组件 static int N=30;//班级人数 static int R=5;//文本文件中所有成绩所占的行数 static String[] str1=new String[N];//定义 String 数组用来保存全班学生的成绩 Int max=0,min=100;//最高分、最低分 double sum = 0;//成总和 double average = 0;//平均成绩 String str2=null;//每个学生的成绩 int n1 = 0,n2 = 0,n3 = 0,n4 = 0,n5=0,n6=0;//各分数段的人数 3.2 异常处理 由于 Java 程序常常在网络环境中运行,安全按成为首先考虑的重要因素之一。为了能够及时 有效地处理程序中的运行错误,Java 中引入了异常和异常类,并提供了丰富的处理错误与异常的 措施。Java 中所有的异常类都是系统类库中的 Exception 类的子类。Exception 类的层次结构如图 1: Throwable Error Exception IOException RuntimeException IllegalAccessException AWT Exception InterruptedException 图 7 Exception 类的层次结构 表 3 中的异常与 I/O 操作有关,通常发生在从磁盘或者链接的网络上读取数据的时候[2]。一般 无法防止它们发生,但可以阻止它们产生更大的破坏。 8
分享到:
收藏