C# 学生成绩管理程序:计算 GPA 并排序
以下是一个使用 C# 设计的学生成绩管理程序的示例代码:\n\ncsharp\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\n\nclass Program\n{\n // 定义学生类\n class Student\n {\n public string StudentID { get; set; }\n public string Name { get; set; }\n public List<Course> Courses { get; set; }\n public double GPA { get; set; }\n\n public Student(string studentID, string name)\n {\n StudentID = studentID;\n Name = name;\n Courses = new List<Course>();\n GPA = 0;\n }\n\n public void CalculateGPA()\n {\n double totalCredit = 0;\n double totalGradePoints = 0;\n\n foreach (Course course in Courses)\n {\n totalCredit += course.Credit;\n totalGradePoints += course.GradePoint * course.Credit;\n }\n\n GPA = totalGradePoints / totalCredit;\n }\n }\n\n // 定义课程类\n class Course\n {\n public string Name { get; set; }\n public double Credit { get; set; }\n public double GradePoint { get; set; }\n\n public Course(string name, double credit, double gradePoint)\n {\n Name = name;\n Credit = credit;\n GradePoint = gradePoint;\n }\n }\n\n static void Main(string[] args)\n {\n List<Student> students = new List<Student>();\n\n // 输入学生信息和课程成绩\n Console.WriteLine("请输入学生信息和课程成绩(输入exit结束输入):");\n\n while (true)\n {\n Console.Write("学生学号:");\n string studentID = Console.ReadLine();\n\n if (studentID.ToLower() == "exit")\n break;\n\n Console.Write("学生姓名:");\n string name = Console.ReadLine();\n\n Student student = new Student(studentID, name);\n\n while (true)\n {\n Console.Write("课程名:");\n string courseName = Console.ReadLine();\n\n if (courseName.ToLower() == "exit")\n break;\n\n Console.Write("课程学分:");\n double credit = Convert.ToDouble(Console.ReadLine());\n\n Console.Write("课程成绩:");\n double grade = Convert.ToDouble(Console.ReadLine());\n\n Course course = new Course(courseName, credit, grade);\n student.Courses.Add(course);\n }\n\n student.CalculateGPA();\n students.Add(student);\n }\n\n // 按GPA从高到低排序学生\n students = students.OrderByDescending(x => x.GPA).ToList();\n\n // 输出学生信息和GPA\n Console.WriteLine("\n学生信息和GPA(按GPA从高到低排序):");\n foreach (Student student in students)\n {\n Console.WriteLine("学生学号:{0},姓名:{1},GPA:{2}", student.StudentID, student.Name, student.GPA);\n }\n }\n}\n\n\n这个程序使用了学生类和课程类来管理学生的信息和课程成绩。通过输入学生信息和课程成绩,可以计算每个学生的 GPA,并按 GPA 从高到低排序学生。输出学生信息和 GPA。
原文地址: http://www.cveoy.top/t/topic/pMvs 著作权归作者所有。请勿转载和采集!