C#编写:有五个学生,每个学生有3门课的成绩,输入以上数据(包括学生号,姓名,三门课成绩)

C#编写:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,并输出学生信息和平均成绩。记录多个学员信息,并可以排序输出。

纯粹C#代码实现如下:
List<Student> list= new List<Student>();
list.Add(new Student("name","subject1",88));
....
list.Add(new Student("name","subject3",55));

var l=from i in list group i by i.name into g orderby g.Average(p=>p.score) descending select new {g.Key, AvgScore=g.Average(p=>p.score)};

foreach(var item in l)
Console.WriteLine("{0}的平均分为{1}",item.Key,item.AvgScore);

纯粹数据库方式实现如下

create table student
(
id int identity(1,1) primary key,
classid int not null,
name nvarchar(6) not null,
subject nvarchar(10) not null,
score float

)
go

create view vw_SelectAvg
as
select classid,name,avg(score) as avgScore from student group by classid,name
go

select * from vw_SelectAvg where classid=1

插入测试数据试试看
温馨提示:答案为网友推荐,仅供参考
相似回答