Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 14.06.2020
Сообщений: 2
1

Сортировка списка по группам

14.06.2020, 19:45. Показов 1040. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
]Здравствуйте, в задаче требуется ввести списком студентов, их группы и группы здоровья, выбрать тех, кто принадлежит к введённой группе здоровья и отсортировать список по группам, в которых студенты обучаются. Написал всё, кроме сортировки, выходит только по возрастанию, технически конечно верно, но хотелось бы, чтобы сначала отсортированные, допустим, шли, а затем все остальные, как можно такое сделать?) Спасибо
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
/*15. Медосмотр. Составить программу формирования данных о студентах,
 * прошедших медосмотр: фамилия, имя, отчество, номер группы, группа здоровья (I,II,III,IV).
 * Организовать выбор студентов, имеющих определенную группу здоровья,
 * вывести их на экран, сгруппировав по группам, в которых они обучаются.*/
 
#include <stdio.h>
#include <string.h>
int main()
{
    struct med
    {
        char Name[15];
        char MiddleName[15];
        char SurName[15];
        int num,gr;
    };
    int n,i,j,zd,k,f;
    char buf[15],cur[15],s[15];
    printf("Введите количество студентов: ");scanf("%d",&n);
    med N[n];
    for(i=0;i<n;i++)
    {
        fflush(stdin);
        printf("\nВведите фамилию студента %d: ",i+1);
        fgets(N[i].SurName,15,stdin);
        printf("\nВведите имя студента %d: ",i+1);
        fgets(N[i].Name,15,stdin);
        printf("\nВведите отчество студента %d: ",i+1);
        fgets(N[i].MiddleName,15,stdin);
        printf("\nВведите номер группы студента %d: ",i+1);scanf("%d",&N[i].num);
        printf("\nВведите группу здоровья студента %d: ",i+1);scanf("%d",&N[i].gr);
    }
    printf("\nВыберите группу здоровья от 1 до 4: ");scanf("%d",&zd);
    for(i=0;i<n-1;i++)//структура
    {
        for(j=i+1;j<n;j++)
            if(N[i].num>N[j].num)
            {
                strcpy(cur,N[i].SurName);//сортировка фамилий
                strcpy(N[i].SurName,N[j].SurName);
                strcpy(N[j].SurName,cur);
 
                strcpy(buf,N[i].Name);//имен
                strcpy(N[i].Name,N[j].Name);
                strcpy(N[j].Name,buf);
 
                strcpy(s,N[i].MiddleName);//отчеств
                strcpy(N[i].MiddleName,N[j].MiddleName);
                strcpy(N[j].MiddleName,s);
 
                k=N[i].num;//номер группы
                N[i].num=N[j].num;
                N[j].num=k;
 
                f=N[i].gr;
                N[i].gr=N[j].gr;
                N[j].gr=f;//номер группы здоровья
 
 
        }
    }
    printf("\nСортировка:\n");
    for(i=0;i<n;i++)
    {
        if(N[i].gr==zd)
        {
            printf("Фамилия: %sИмя: %sОтчество: %sНомер группы: %d , группа здоровья: %d\n",N[i].SurName,N[i].Name,N[i].MiddleName,N[i].num,N[i].gr);
        }
    }
 
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.06.2020, 19:45
Ответы с готовыми решениями:

Сортировка чисел по группам
Даны числа их надо раскидать на две группы: вещественные и целые, и реализовать функцию...

Сортировка по группам
Добрый день, подскажите возможно ли такое сделать. В колонке A в произвольном порядке вводятся...

Выгрузка отчета пользователей по группам согласно списка
Добрый день! Сделал скрипт для выгрузки пользователей из группы AD согласно списка в текстовом...

Сортировка таблиц по группам и вывод в DGV
Может кто сталкивался: делаю кластерный аналализ. Получаю несколько групп таблиц. Как сделать чтобы...

3
317 / 114 / 37
Регистрация: 26.11.2019
Сообщений: 735
14.06.2020, 20:26 2
https://google.gik-team.com/?q... 1%81%2B%2B

Добавлено через 9 минут
И кстати, это не Qt
Cpp и CppQt разные вещи
0
0 / 0 / 0
Регистрация: 14.06.2020
Сообщений: 2
14.06.2020, 20:47  [ТС] 3
По поводу qt понял. Эту тему изучу, спасибо. Вообще, у нас эта работа была давно, ещё до функций, то есть по идее есть варианты другие как отсортировать, вот я и думаю можно ли циклами так сделать
0
317 / 114 / 37
Регистрация: 26.11.2019
Сообщений: 735
14.06.2020, 21:15 4
BeImmortel, https://ru.wikipedia.org/wiki/Qt

Добавлено через 16 секунд
Krams, Ссылка ну гугл поиск

Не по теме:

АХАХХАХХАХАХхахХАХахХАХХАХАХхахХХАХАХХА



Добавлено через 3 минуты
Цитата Сообщение от BeImmortel Посмотреть сообщение
можно ли циклами так сделать
Сортировка пузырьком, а в ней просто вручную сравниваете нужные параметры
0
14.06.2020, 21:15
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.06.2020, 21:15
Помогаю со студенческими работами здесь

Сложнейший алгоритм (сортировка последовательности чисел по группам)
1) Используя любое приложение или программу написать алгоритм сортировки, заданной...

Получение информации о виртульных машинах и сортировка по группам
Доброго времени суток. Есть простенький скрипт, который отображает имя и объем оперативной памяти...

Расспределение списка детей по группам (по году рождению, полу и весу)
Здравствуйте! Я являюсь детским тренером по единоборствам. Перед каждым...

"Сортировка двусвязного списка путем исключения элемента с минимальным значением и включения его в начало нового списка
Здравствуйте! Возникла проблема с программой. Тема: &quot;Сортировка двусвязного списка путем исключения...

Создание списка и сортировка списка
Добрый день, понимаю, что в последнее время от меня многовато тем, но конец семестра, так что...

Сортировка списка значений словаря, по номеру заголовка, элемента списка значений
Ёу. Сижу программирую такой, и не получается отсортировать словарик мой. private static...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru