C#中如何对对象数组排序

jsboy299 2012-09-03 09:04:05
从键盘接收4名学生的信息(学号、姓名、成绩)并按照成绩由高到低排列,用对象数组做。新手求指导
...全文
288 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2012-09-03
  • 打赏
  • 举报
回复
class Student
{
public int ID { get; set; }
public string Name { get; set; }
public int Score { get; set; }
}

void Main()
{
List<Student> students = new List<Student>();
for (int i = 1; i <= 4; i++)
{
Console.WriteLine("Please input the student name:");
string name = Console.ReadLine();
Console.WriteLine("Please input {0}'s ID:", Name);
int id = int.Parse(Console.ReadLine());
Console.WriteLine("Please input {0}'s Score:", Name);
int score = int.Parse(Console.ReadLine());
students.Add(new Student() { Name = name, ID = id, Score = score });
}
foreach (Student student in students.OrderByDescending(x => x.Score))
{
Console.WriteLine(student.Name);
}
}
youzelin 2012-09-03
  • 打赏
  • 举报
回复
比如输入“0001,张三,90”,然后回车,Console.ReadLine 会读取整个字符串,你把它放到一个string里面,然后对他进行 split,分割成string数组。自定义类,接收这三个参数。自定义类实现 ICompareable 接口,在 Compare 方法里面写排序规则。然后用 List<自定义类> Sort 方法进行排序。
龙泉剑 2012-09-03
  • 打赏
  • 举报
回复
1、将学生信息存入对象数组
2、利用排序算法按照成绩对数组排序,可以用最简单的冒泡排序实现

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧