Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.11.2012, 15:55   #1
stas_kovel
Пользователь
 
Регистрация: 15.03.2012
Сообщений: 28
Восклицание Структуры в C#

Код:
namespace Stryktyra
{
    class Program
    {
        public struct InfoStd
        {
            public string fio;
            public int ngr;
            public double ocinka;
            public double serbal;
        };
        
        public static void Main(string[] args)
        {
            InfoStd std = new InfoStd();
            int kilstd;

            Console.WriteLine("Количество студентов");
            kilstd = Convert.ToInt32(Console.ReadLine());

            for (int i = 0; i < kilstd; i++)
            {
                Console.WriteLine("Vvedite FIO");
                std.fio = Convert.ToString(Console.ReadLine());

                Console.WriteLine("Vvedit nomer grypu");
                std.ngr = Convert.ToInt32(Console.ReadLine());

                Console.WriteLine("Vvedit 4 ocenki");
                std.serbal = 0;
                for (int j = 0; j < 4; j++)
                {
                    std.ocinka = Convert.ToDouble(Console.ReadLine());
                    std.serbal += std.ocinka/4;
                }
                Console.WriteLine();
            }

            Console.WriteLine("".PadLeft(40, '-'));
            Console.WriteLine("{0}\t {1,5}\t {2,5}\t", "Студент", "Группа", "Средний бал");
            Console.WriteLine("{0}\t {1,5}\t {2,5}\t", std.fio, std.ngr, std.serbal);
            Console.ReadLine();
        }
                
    }
}
Она работает, но нужно чтобы если я ввел 2 студентов то их 2 мне показало. А при этом коде показывает только последнего. Спс за помощь!!!

Последний раз редактировалось Serge_Bliznykov; 04.11.2012 в 21:29.
stas_kovel вне форума Ответить с цитированием
Старый 04.11.2012, 22:34   #2
D61C76h
Пользователь
 
Регистрация: 29.03.2010
Сообщений: 24
По умолчанию

Код:

namespace Stryktyra
{
    class Program
    {
        public struct InfoStd
        {
            public string fio;
            public int ngr;
            public double serbal;
        };

        public static void Main(string[] args)
        {
            InfoStd std = new InfoStd();
            int kilstd;

            Console.WriteLine("Количество студентов");
            kilstd = Convert.ToInt32(Console.ReadLine());

            InfoStd[] students = new InfoStd[kilstd];

            for (int i = 0; i < kilstd; i++)
            {
                Console.WriteLine("Vvedite FIO");
                students[i].fio = Convert.ToString(Console.ReadLine());

                Console.WriteLine("Vvedit nomer grypu");
                students[i].ngr = Convert.ToInt32(Console.ReadLine());

                Console.WriteLine("Vvedit 4 ocenki");
                double totalBalls = 0;
                for (int j = 0; j < 4; j++)
                {
                    totalBalls += Convert.ToDouble(Console.ReadLine());
                }
                students[i].serbal = totalBalls / 4;
                Console.WriteLine();
            }

            Console.WriteLine("".PadLeft(40, '-'));
            Console.WriteLine("{0}\t {1,5}\t {2,5}\t", "Студент", "Группа", "Средний бал");
            foreach(InfoStd student in students)
                Console.WriteLine("{0}\t {1,5}\t {2,5}\t", student.fio, student.ngr, student.serbal);
            Console.ReadLine();
        }

    }
}
D61C76h вне форума Ответить с цитированием
Старый 04.11.2012, 23:03   #3
stas_kovel
Пользователь
 
Регистрация: 15.03.2012
Сообщений: 28
По умолчанию

Очень спасибо тебе!!! Ты молодец!!!!! Работает!!!!
Блин только что вспомнил еще нужно посортировать по среднему балу.
Не получается...

Последний раз редактировалось stas_kovel; 04.11.2012 в 23:25.
stas_kovel вне форума Ответить с цитированием
Старый 05.11.2012, 22:10   #4
D61C76h
Пользователь
 
Регистрация: 29.03.2010
Сообщений: 24
По умолчанию

А ты пробовал?
замени строчку foreach(InfoStd student in students)
на foreach (InfoStd student in students.OrderBy(s => s.serbal).Reverse())
D61C76h вне форума Ответить с цитированием
Старый 05.11.2012, 23:50   #5
stas_kovel
Пользователь
 
Регистрация: 15.03.2012
Сообщений: 28
По умолчанию

я прям чувствовал что так будет...
Я так писал, но не использовал "=>"
Спасибо тебе огромное!!!
stas_kovel вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Написание программ (древовидные структуры, структуры неспециального вида и т.д.) Green Gin Фриланс 2 27.04.2012 15:26
Управляющие структуры. Программирование алгоритмов разветвляющейся структуры. Лёнка Компоненты Delphi 1 23.04.2012 15:03
Структуры в Си. Muro Общие вопросы C/C++ 4 16.05.2010 12:31
Структуры p4serhiy Помощь студентам 3 08.05.2010 12:39
Структуры BaSk Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 16.05.2009 15:33