Описать структуру с именем STUDENT - C# (208218)

Узнай цену своей работы

Формулировка задачи:

Помогите пожалуста...Очень срочно нужно. За рание спасибо. Описать структуру с именем STUDENT, содержащую следующие поля: • фамилия и инициалы; • номер группы; • успеваемость (массив из пяти элементов). Написать программу, выполняющую следующие действия: • ввод с клавиатуры данных в массив, состоящий из десяти структур типа STUDENT; • упорядочить записи по возрастанию номера группы; • вывод на дисплей фамилий и номеров групп для всех студентов, включённых в массив, если средний бал студента больше 4.0; если таких студентов нет, то вывести соответствующее сообщение.

Решение задачи: «Описать структуру с именем STUDENT»

textual
Листинг программы
using System;
using System.Linq;
 
namespace Students
{
    class Program
    {
        static void Main(string[] args)
        {
            Student[] students = new Student[10];
 
            for (int i = 0; i < students.Length; i++)
            {
                Console.Write("Введите имя и инициалы {0}-ого студента: ", i + 1);
                string name = Console.ReadLine();
                Console.Write("Введите номер группы {0}-ого студента: ", i + 1);
                int nomber = int.Parse(Console.ReadLine());
                Console.Write("Введите, через запятую, 5 оценок {0}-ого студента: ", i + 1);
                string[] marks = Console.ReadLine().Split(',');
 
                int[] progress = new int[5];
                for (int a = 0; a < 5; a++)
                    progress[a] = int.Parse(marks[a].ToString());
 
                students[i] = new Student(name, nomber, progress);
            }
 
            var stud = from i in students orderby i.GroupNomber select i; //Сортировка!
 
            Console.WriteLine("\n\nУпорядоченный по номеру группы массив студентов: ");
 
            foreach (Student student in stud)
                Console.WriteLine("\n" + student.ToString());
 
            int count = 0;
            foreach (Student student in students)
                if (student.MediumBall() > 4)
                    count++;
 
            if (count == 0)
                Console.WriteLine("\nНет студентов со средним баллом больше 4!");
            else
                Console.WriteLine("\nСписок студентов со средним баллом боьше 4: ");
 
            foreach (Student student in students)
                if (student.MediumBall() > 4)
                    Console.WriteLine("\n" + student.ToString());
 
            Console.ReadKey();
        }
    }
 
    struct Student
    {
        public string Name;
        public int GroupNomber;
        int[] progress;
 
        public Student(string Name, int GroupNomber, int[] marks)
        {
            this.Name = Name;
            this.GroupNomber = GroupNomber;
            progress = marks;
        }
 
        public double MediumBall()
        {
            double MedBall = 0;
 
            foreach (int i in progress)
                MedBall += i;
            MedBall /= progress.Length;
 
            return MedBall;
        }
 
        public override string ToString()
        {
            return string.Format("ФИО: {0} \nНомер группы: {1}", Name, GroupNomber);
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.933 из 5