C# 学生分组平均成绩

C# 学生分组平均成绩,c#,C#,我有如下的学生名单 public class Student { public string First { get; set; } public string Last { get; set; } public int ID { get; set; } public List<int> Scores; } List<Student> students = new List<Student>() {

我有如下的学生名单

public class Student
{
    public string First { get; set; }
    public string Last { get; set; }
    public int ID { get; set; }
    public List<int> Scores;
}

List<Student> students = new List<Student>()
     {
         new Student { First = "a", Last = "aa", ID = 1, Scores = new List<int>() { 97, 92, 81, 60 } },
         new Student { First = "b", Last = "bb", ID = 2, Scores = new List<int>() { 75, 84, 91, 39 } },
         new Student { First = "c", Last = "cc", ID = 3, Scores = new List<int>() { 88, 94, 65, 91 } },

     };
公共班级学生
{
第一个公共字符串{get;set;}
公共字符串Last{get;set;}
公共int ID{get;set;}
公开名单分数;
}
学生名单=新名单()
{
新学生{First=“a”,Last=“aa”,ID=1,分数=new List(){97,92,81,60},
新学生{First=“b”,Last=“bb”,ID=2,分数=newlist(){75,84,91,39},
新学生{First=“c”,Last=“cc”,ID=3,分数=newlist(){88,94,65,91},
};
我如何根据学生的分数对他们进行分组

var groups = students.GroupBy(s => s.Scores.Average());
这将为您提供一个元素列表,其中键等于平均值,值等于具有该平均值的学生:

foreach(var g in groups){
    Console.WriteLine("Average: "+ g.Key);
    foreach(var s in g){
        Console.WriteLine(s.ID +":"+ s.First +" "+ s.Last);
    }
}

你试过什么?你平均想要什么样的扣子?