好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

java控制台实现学生管理系统

本文实例为大家分享了java控制台实现学生管理系统的具体代码,供大家参考,具体内容如下

编写一个学生成绩管理程序。学生的属性包括学号、姓名、年龄等。每个学生要学习若干课程,每门课程有平时成绩、期中考试成绩、实习成绩、期末考试成绩以及总评成绩等多个成绩,其中平时成绩的数目不定(因为不同课程的教师布置的平时作业数不同),而总评成绩是其它成绩的平均值。请先设计合理的对象容器类存放这些信息,然后设计程序完成以下功能:

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

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

3)分区段统计某门课程的学生总评成绩,例如60 分以下的学生人数、60 至70 分的学生人数等。

Student类:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

package homework032002;

 

import java.util.ArrayList;

 

public class Student {

     private String name;

     private String no;

     private int age;

     private ArrayList<Grade> Grade;

     public ArrayList<Grade> getCourses() {

         return Grade;

     }

     public void setCourses(ArrayList<Grade> Grade) {

         this .Grade = Grade;

     }

    

    

     public String getName() {

         return name;

     }

     public void setName(String name) {

         this .name = name;

     }

     public String getNo() {

         return no;

     }

     public void setNo(String no) {

         this .no = no;

     }

     public int getAge() {

         return age;

     }

     public void setAge( int age) {

         this .age = age;

     }

 

 

     @Override

     public String toString() {

         return "Student [name=" + name + ", no=" + no + ", age=" + age + ", course=" + Grade + "]" ;

     }

     public Student(String name, String no, int age, ArrayList<Grade> Grade) {

         super ();

         this .name = name;

         this .no = no;

         this .age = age;

         this .Grade = Grade;

     }

     public Student() {

         super ();

         // TODO Auto-generated constructor stub

     }

}

Function类:(功能封装在此类中):

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

package homework032002;

import homework032002.Grade;

import java.util.ArrayList;

 

public class Function {

     //static ArrayList<Grade> arrayList = new ArrayList<>();

     //static ArrayList<Student> arrayList2 = new ArrayList<>();

     private ArrayList<Student> arrayList2;

     public Function(ArrayList<Student> arrayList) {

         super ();

         this .arrayList2 = arrayList;

     }

     //根据名字搜索该学生的成绩

     public void show(String name) {

         for (Student s : arrayList2) {

             if (s.getName().equals(name)) {

                 ArrayList<Grade> course = s.getCourses();

                 System.out.println( "该学生的成绩是:" );

                 for (Grade grade : course) {

                    

                     System.out.println(grade);

                 }

                     break ;

             }

         }

        

     }

 

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

     public void showOneSum(String courseName) {

         double sumGrade = 0 ;

         int num = 0 ;

         for (Student student : arrayList2) {

             ArrayList<Grade> grades = student.getCourses();

             for (Grade grade : grades) {

                 if (courseName.equals(grade.getCourse())) {

                     num++;

                     sumGrade += grade.getSumGrade();

                     System.out.println(student.getName()+ "的总评分是" +grade.getSumGrade());

                 }

             }

         }

             System.out.println( "所有学生的总评分是:" +sumGrade/num);

     }

         //分区段统计某门课程的学生总评成绩,例如60 分以下的学生人数、60 至70 分的学生人数等

     public void selectGrade(String courseName) {

         int down60 = 0 ;

         int down60_70 = 0 ;

         for (Student student : arrayList2) {

             ArrayList<Grade> grades = student.getCourses();

             for (Grade grade : grades) {

                 if (courseName.equals(grade.getCourse())) {

                     if (grade.getSumGrade() < 60 ) {

                         down60++;

                     } else if (grade.getSumGrade() > 60 || grade.getSumGrade() < 70 ) {

                         down60_70++;

                     }

                 }

             }

         }

         System.out.println( "60分以下的有" +down60+ "人" );

         System.out.println( "60-70分以下的有" +down60_70+ "人" );

     }

        

    

}

Grade类:(课程类)

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

package homework032002;

//每门课程有平时成绩、期中考试成绩、实习成绩、期末考试成绩以及总评成绩等多个成绩

public class Grade {

     private String course;

     private int dailyGrade;

     private int midGrade;

     private int doGrade;

     private int endGrade;

    

     public String getCourse() {

         return course;

     }

     public void setCourse(String course) {

         this .course = course;

     }

     public Grade(String course, int dailyGrade, int midGrade, int doGrade, int endGrade, double sumGrade) {

         super ();

         this .course = course;

         this .dailyGrade = dailyGrade;

         this .midGrade = midGrade;

         this .doGrade = doGrade;

         this .endGrade = endGrade;

         this .sumGrade = sumGrade;

     }

 

     public int getDailyGrade() {

         return dailyGrade;

     }

     public void setDailyGrade( int dailyGrade) {

         this .dailyGrade = dailyGrade;

     }

     private double sumGrade;

     public int getMidGrade() {

         return midGrade;

     }

     public void setMidGrade( int midGrade) {

         this .midGrade = midGrade;

     }

     public int getDoGrade() {

         return doGrade;

     }

     public void setDoGrade( int doGrade) {

         this .doGrade = doGrade;

     }

     public int getEndGrade() {

         return endGrade;

     }

     public void setEndGrade( int endGrade) {

         this .endGrade = endGrade;

     }

     public double getSumGrade() {

         return sumGrade;

     }

     public void setSumGrade( double sumGrade) {

         this .sumGrade = sumGrade;

     }

     @Override

     public String toString() {

         return "Grade [course=" + course + ", dailyGrade=" + dailyGrade + ", midGrade=" + midGrade + ", doGrade="

                 + doGrade + ", endGrade=" + endGrade + ", sumGrade=" + sumGrade + "]" ;

     }         

    

}

测试类:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

package homework032002;

 

import java.util.ArrayList;

 

public class Test {

     public static void main(String[] args) {

         ArrayList<Student> students = new ArrayList<>();

         ArrayList<Grade> grades = new ArrayList<>();

         students.add( new Student( "小明" , "12" , 13 , grades));

         grades.add( new Grade( "高数" , 50 , 95 , 45 , 78 , 76 ));

         grades.add( new Grade( "语文" , 50 , 95 , 45 , 78 , 76 ));

         grades.add( new Grade( "英语" , 50 , 95 , 45 , 78 , 76 ));

         grades.add( new Grade( "计算机" , 50 , 95 , 45 , 78 , 76 ));

         ArrayList<Grade> grades1 = new ArrayList<>();

         students.add( new Student( "小红" , "12" , 13 , grades1));

         grades1.add( new Grade( "高数" , 50 , 95 , 45 , 78 , 76 ));

         grades1.add( new Grade( "语文" , 50 , 95 , 45 , 78 , 76 ));

         grades1.add( new Grade( "英语" , 50 , 95 , 45 , 78 , 76 ));

         grades1.add( new Grade( "计算机" , 50 , 95 , 45 , 78 , 76 ));

         ArrayList<Grade> grades2 = new ArrayList<>();

         students.add( new Student( "小上" , "12" , 13 , grades2));

         grades2.add( new Grade( "高数" , 50 , 95 , 45 , 78 , 76 ));

         grades2.add( new Grade( "语文" , 50 , 95 , 45 , 78 , 76 ));

         grades2.add( new Grade( "英语" , 50 , 95 , 45 , 78 , 76 ));

         grades2.add( new Grade( "计算机" , 50 , 95 , 45 , 78 , 76 ));

         ArrayList<Grade> grades3 = new ArrayList<>();

         students.add( new Student( "小蓝" , "12" , 13 , grades3));

         grades3.add( new Grade( "高数" , 50 , 95 , 45 , 78 , 76 ));

         grades3.add( new Grade( "语文" , 50 , 95 , 45 , 78 , 76 ));

         grades3.add( new Grade( "英语" , 50 , 95 , 45 , 78 , 76 ));

         grades3.add( new Grade( "计算机" , 50 , 95 , 45 , 78 , 76 ));

        

         Function function = new Function(students);

         function.show( "小明" );

         function.showOneSum( "计算机" );

         function.selectGrade( "高数" );    

     }}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

原文链接:https://blog.csdn.net/Java_coder_guan/article/details/79634852

查看更多关于java控制台实现学生管理系统的详细内容...

  阅读:14次