文档库 最新最全的文档下载
当前位置:文档库 › java学生成绩管理系统设计

java学生成绩管理系统设计

java学生成绩管理系统设计
java学生成绩管理系统设计

注:这个程序要结合下面3个类才能运行:

学生信息可以自己加

/*1.编写一个学生成绩管理程序。学生的属性包括学号、、年龄等。每个学生要学习

若干课程,每门课程有平时成绩、期中考试成绩、实习成绩、期末考试成绩以及总评成绩

等多个成绩,其中平时成绩的数目不定(因为不同课程的教师布置的平时作业数不同),而

总评成绩是其它成绩的平均值。请先设计合理的对象容器类存放这些信息,然后设计程序完

成以下功能:

1)列出某个学生的所有成绩;

2)列出某门课程每个学生的总评成绩,及所有

学生总评成绩的总评分;

3)分区段统计某门课程的学生总评成绩,例如60 分以下的学生人数、60 至70 分的学生人数等。根据兴趣,你还可实现其它一些功能。请仔细设计和组织你的

类和使用的集合类对象。*/

package .geminno.day730.homework12;

import java.util.ArrayList;

import java.util.List;

public class TestStudentManage {

public static void main(String[] args) {

List students = new ArrayList();//实例化对象

List courses = new ArrayList();//实例化对象

//第一个学生的信息:

Course c = new Course("Web编程", 85, 69, 70, 75, 90);

courses.add(c);

c = new Course("编程思想", 95, 78, 86, 88, 80);

courses.add(c);

c = new Course("java编程", 90, 80, 75, 88, 92);

courses.add(c);

c = new Course("数据库",93,60,55,80,56);

courses.add(c);

Student s = new Student("2012", "三", 20, "男", "计算机", courses);

students.add(s);

//第二个学生

courses = new ArrayList();

c = new Course("Web编程", 80, 70, 50, 55, 60);

courses.add(c);

c = new Course("编程思想", 95, 77, 80, 66, 88);

courses.add(c);

c = new Course("java编程", 70, 80, 71, 82, 60);

courses.add(c);

c = new Course("数据库",60,60,55,75,70);

courses.add(c);

s = new Student("2013", "晓红", 18, "女", "计算机", courses);

students.add(s);

//第三个学生信息

courses = new ArrayList();

c = new Course("Web编程", 80, 79, 70, 75, 88);

courses.add(c);

c = new Course("编程思想", 95, 88, 56, 88, 89);

courses.add(c);

c = new Course("java编程", 90, 60, 75, 80, 92);

courses.add(c);

c = new Course("数据库",93,60,55,86,60);

courses.add(c);

s = new Student("2014", "海伦", 20, "女", "计算机", courses);

students.add(s);

StudentManage sm = new StudentManage(students);

sm.showScoreBySno("2013");

sm.showStaticsScore("数据库");

sm.showTotalScore("java编程");

}

}

学生管理类:

package .geminno.day730.homework12;

import java.util.List;

public class StudentManage {//类

private List students;

public StudentManage(List students) {//构造函数super();

this.students = students;

}

public void showScoreBySno(String sno){//方法

if(sno == null) return;//如果sno为空,则返回

for(Student s: students){//遍历student集合

if(s.getSno().equals(sno)){//如果得到的学号和自己选的学号相等

List courses = s.getCourses();//则得到相应的课程

for(Course c : courses){//遍历course课程集合

System.out.println(c);//输出

}

break;//跳出for循环

}

}

}

public void showTotalScore(String ame){//方法

if(cname == null) return;//如果名字为空则返回

int countStudent = 0;//定义整型初始值

int totalScore = 0;//定义初始值

System.out.println("选择"+cname+"有以下学生:");

for(Student s : students){//遍历集合

List courses = s.getCourses();

for(Course c : courses){//遍历集合

if(cname.equals(c.getCname())){//如果名字和得到的名字相同

countStudent ++;//则相应的加1

totalScore = totalScore +c.getTotalScore();

System.out.println(s.getName()+"totalScore:"+c.getTotalSco re());//输出

}

}

相关文档