Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
NotBeginner
157 / 157 / 20
Регистрация: 22.02.2013
Сообщений: 2,828
Записей в блоге: 2
#1

Ввести несколько структур типа «Зачетка студента» с полями. Скомпилировать код - C++

27.03.2014, 23:08. Просмотров 580. Ответов 4
Метки нет (Все метки)

есть задание -
Ввести несколько структур типа «Зачетка студента» с полями
{Фамилия студента
Номер зачетки
Массив из 4 оценок
}
Написать программу, выполняющую следующие действия:
Сортировка структур по фамилии или среднему баллу
Удаление всех зачеток троечников
написал код но нет возможности проверить
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#include <string>
#include <iostream>
#include <vector>
 
const int max_number_of_students=2;
const int grades_count = 3;
struct RecordBook // да, так будет зачетка
{   
    std::string last_name;
    int no;
    int grades[grades_count]; // раньше это называлось "ocenka"
};
 
int main()
{
    /*
        Фамилия студента
        Номер зачетки
        Массив из 4 оценок
        *   Сортировка структур по фамилии или среднему баллу
        *   Удаление всех зачеток троечников
    */
 
    std::vector<RecordBook> box;
    RecordBook t;
 
    for(int i = 0; i < max_number_of_students; i++)
    {
        std::cout << "Enter Last Name:" << std::endl;
        getline(std::cin, t.last_name);
 
        std::cout << "Enter Nomer:" << std::endl;
        std::cin >> t.no;
        std::cout << "Enter grades (count:"<< grades_count <<")" << std::endl;
        for (int j = 0; j < grades_count; j++)
            std::cin >> t.grades[j];
     
        std::cin.ignore(50, '\n'); 
        box.push_back(t);
    }
 
    //- Cортировка по фамилии
    // Здесь хорошо бы применить стандартный алгоритм сортировки, но боюсь это будет перебор.
    for(size_t i=box.size()-1; i>0 ; i--)
        for(size_t j=0; j<i ; j++)
            if(box[ j ].last_name > box[ j+1 ].last_name)
            {   
               std::swap(box[j], box[j+1]);
               // три строки ниже - олд-скул вариант.
               //RecordBook t = box[j];
               //box[j] = box[j+1];
               //box[j+1] = t;
            }
 
    for(size_t i=0; i<box.size(); i++)
    {
        bool is_find = false;
        for (int j = 0; j < grades_count; j++) {
           if (box[i].grades[j] == 3) {
             is_find = true;
             break;
           }
        }
        if (is_find)
           continue;
        std::cout << box[i].last_name << std::endl << box[i].no << std::endl;
 
        for(int j=0; j<grades_count; j++)
            std::cout << box[i].grades[j] << " ";
        std::cout << std::endl;
    }
 
    return 0;
}
помогите кто нибудь - проверьте работает или нет

Добавлено через 1 час 2 минуты
up!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.03.2014, 23:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ввести несколько структур типа «Зачетка студента» с полями. Скомпилировать код (C++):

Ввести несколько структур типа «Зачетка студента» - C++
Вот условие задачи: Ввести несколько структур типа «Зачетка студента» с полями {Фамилия студента Номер зачетки Массив из 4 оценок ...

Описать структуру с именем NOTE, с полями: фамилия, номер телефона, год рождения. Ввести несколько структур. - C++
Помогите пожайлуйста 1. Описать структуру с именем NOTE, с полями: фамилия, номер телефона, год рождения. Ввести несколько структур....

Функции над полями структуры - Поиск самого высокого студента - C++
Всем привет! Помогите пожалуйста добавить в мой код следующие функции:1) Поиск самого высокого студента 2) Самого тяжелого(Вес) и 3)...

Создать стек, информационными полями которого являются: фамилия и средний балл студента - C++
Помогите с задачей, пожалуйста Создать стек, информационными полями которого являются: фамилия и средний бал студента. Добавить в стек...

массив структур с полями - C++
Ребят помогите разобраться: Реализовать в программе массив структур с полями: Фамилия студента Номер группы Средний балл за...

Массив из структур с двумя целочисленными полями - C++
Я попытался написать программу, определяющую массив из структур с двумя полями, содержащими 5 элементов. Ввод значений элементов с консоли....

4
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
27.03.2014, 23:20 #2
NotBeginner, а в чем проблема проверить самому? Если нет компилятора под рукой, всегда есть варианты в онлайне. Например, ideone.com
1
NotBeginner
157 / 157 / 20
Регистрация: 22.02.2013
Сообщений: 2,828
Записей в блоге: 2
27.03.2014, 23:27  [ТС] #3
Tulosba, не компилится( не могу понять почему
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
27.03.2014, 23:34 #4
NotBeginner, все компилируется http://ideone.com/tURHzn
1
NotBeginner
157 / 157 / 20
Регистрация: 22.02.2013
Сообщений: 2,828
Записей в блоге: 2
27.03.2014, 23:43  [ТС] #5
а я язык не сменил)) спасибо)
0
27.03.2014, 23:43
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.03.2014, 23:43
Привет! Вот еще темы с ответами:

Нужен способ помещения разного рода типа данных в контейнеры типа массивов или структур - C++
Сабж. Нужен способ помещения разного рода типа данных в контейнеры типа массивов или структур или... пободного рода простых для восприятия...

Структуры и массивы структур: найти самого старшего студента, родившегося летом - C++
Нужна помощь с задачей: Найти и вывести на экран самого старшего студента родившегося летом. #include &lt;iostream&gt; #include &lt;string&gt; ...

Как скомпилировать несколько файлов через консоль g++ - C++
Возможно заезженная тема, но не получается собрать несколько файлов в один. Что пишет гугл, не помогает, 5-й час проблему ищу. Напишу оч....

Ввести отсортированную последовательность структур с полями Дата и Событие - C (СИ)
Условие: Ввести отсортированную последовательность структур с полями Дата и Событие (тоесть - если не следующая дата произошла ранее...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru