用字典实现学生信息的录入及按成绩排序输出
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 学生信息录入及排序 { class Program {//用字典实现学生 信息的录入,然后按成绩从高到低排序输出. static void Main(string[] args) { //定义一个字典用于存储学生的姓名和成绩。 Dictionary<string, int> dic = new Dictionary<string, int>(); int Num, score; string name; Console.Write("请输入学生人数:"); //用户输入的不是数字则要求重新输入。 while (!int.TryParse(Console.ReadLine(), out Num)) { Console.Write("输入不正确,请重新输入:"); } //根据用户输入的学生人数一次让用户输入姓名和成绩 for (int i = 1; i <= Num; i++) { Console.Write("请输入第{0}/{1}个学生姓名:", i, Num); name = Console.ReadLine(); Console.Write("请输入第{0}/{1}个学生成绩:", i, Num); // 如果输入不是数字且不在1-100之间则要求用户从新输入。 while (!int.TryParse(Console.ReadLine(), out score) || score > 100 || score < 0) { Console.Write("输入有误,请重新输入第{0}/{1}个学生的成绩:", i, Num); } //将学生成绩加入字典集合。 dic.Add(name, score); } //将学生信息按照学生成绩从高到低进行排序。 var r = from p in dic orderby p.Value descending select p; Console.WriteLine("学生信息如下:"); //打印输入排序后学生信息。 foreach (var i in r) { Console.WriteLine("姓名:{0},成绩:{1}", i.Key, i.Value); } Console.ReadKey(); } } }
---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------