Распечатать данные о студентах из файла - C#
Формулировка задачи:
помогите написать программу заранее спасибо..
9. Дан файл, содержащий информацию о студентах: фамилия, имя, отчество, номер группы, оценки по трем предметам текущей сессии. За один просмотр файла напечатать элементы файла в следующем порядке: сначала все данные о студентах, успешно сдавших сессию, потом данные об остальных студентах, сохраняя исходный порядок в каждой группе сотрудников.
Решение задачи: «Распечатать данные о студентах из файла»
textual
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.Linq;
- namespace ConsoleApplication1
- {
- class Program
- {
- static void Main(string[] args)
- {
- List<Student> data = new List<Student>();
- System.IO.StreamReader sr = new System.IO.StreamReader(@"C:\file.txt");
- string line = null;
- while((line = sr.ReadLine()) != null)
- {
- string[] splitLines = line.Split(' ');
- data.Add(new Student()
- {
- LastName = splitLines[0],
- Name = splitLines[1],
- MiddleName = splitLines[2],
- GroupNumber = Int32.Parse(splitLines[3]),
- Marks = new List<int>(){ Int32.Parse(splitLines[4]), Int32.Parse(splitLines[5]), Int32.Parse(splitLines[6]) }
- });
- }
- var query = from d in data
- let x = d.Marks.Sum()
- orderby x descending
- select d;
- foreach(var student in query)
- {
- Console.WriteLine("{0} {1} {2} {3} {4}", student.LastName, student.Name, student.MiddleName, student.GroupNumber, student.Marks.ToStringExt());
- }
- Console.ReadLine();
- }
- }
- class Student
- {
- //фамилия, имя, отчество, номер группы, оценки по трем предметам текущей сессии
- public string LastName { get; set; }
- public string Name { get; set; }
- public string MiddleName { get; set; }
- public int GroupNumber { get; set; }
- public List<int> Marks { get; set; }
- }
- static class Extensions
- {
- public static string ToStringExt(this List<int> m)
- {
- string str = null;
- foreach(var s in m)
- {
- str += s + " ";
- }
- return str;
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д