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

Сортировка записей Структуры по алфавиту

26.05.2020, 15:37. Показов 944. Ответов 1

Author24 — интернет-сервис помощи студентам
Нужно отсортировать по именам учеников в алфавитном порядке
C++
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
#include <iostream>
using namespace std;
 
struct subject {
 
    char first[20];
    int mr1;
    char second[20];
    int mr2;
    char third[20];
    int mr3;
};
 
struct mr {
    char name[50];
    subject mark;
};
 
 
 
int main()
{
 
    mr student[4];
 
 
    for (int i = 0; i < 2; i++) {
        cout << "Enter name: ";
        cin.ignore();
        cin.getline(student[i].name, 50);
        cout << "Enter subject:  ";
        cin.ignore();
        cin >> student[i].mark.first;
        cout << "Enter mark:  ";
        cin >> student[i].mark.mr1;
        cout << "Enter subject:  ";
        cin.ignore();
        cin >> student[i].mark.second;
        cout << "Enter mark:  ";
        cin >> student[i].mark.mr2;
        cout << "Enter subject:  ";
        cin.ignore();
        cin >> student[i].mark.third;
        cout << "Enter mark:  ";
        cin >> student[i].mark.mr3;
 
        cout << "-------------------------------------------------------------------------\n";
    }
    for (int i = 0; i < 2; i++)
    {
        cout << student[i].name << endl << "Subject: " << student[i].mark.first << endl << "Mark: " << student[i].mark.mr1 << endl;
        cout << "Subject: " << student[i].mark.second << endl << "Mark: " << student[i].mark.mr2 << endl;
        cout << "Subject: " << student[i].mark.third << endl << "Mark: " << student[i].mark.mr3 << endl;
        cout << endl;
    }
 
 
 
 
    system("pause");
}
HELP!!!
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.05.2020, 15:37
Ответы с готовыми решениями:

Сортировка записей Структуры по алфавиту
#include &lt;iostream&gt; #include &lt;iomanip&gt; using namespace std; struct STUD // Структура STUD { ...

Сортировка структуры по алфавиту
Здравствуйте, написал прогу, но с сортировкой не получается, и извините, что там все криво-косо.В...

Сортировка Структуры по алфавиту
подскажите как сортировать фамилии по алфавиту? struct WORKER{ char lastnamepip; char...

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

1
Эксперт CЭксперт С++
5118 / 4558 / 854
Регистрация: 07.10.2015
Сообщений: 9,462
26.05.2020, 16:15 2
Лучший ответ Сообщение было отмечено Vitalik606 как решение

Решение

Vitalik606, держи, добавил сортировку и чуть подправил ввод
C++
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
75
76
77
#include <iostream>
using namespace std;
 
struct subject {
 
    char first[20];
    int mr1;
    char second[20];
    int mr2;
    char third[20];
    int mr3;
};
 
struct mr {
    char name[50];
    subject mark;
};
 
 
 
int main()
{
 
    mr student[4];
 
 
    for (int i = 0; i < 4; i++) 
    {
        cout << "Enter name: ";
        cin.getline(student[i].name, 50);
        cout << "Enter subject 1: ";
        cin >> student[i].mark.first;
        cout << "Enter mark 1: ";
        cin >> student[i].mark.mr1;
        cin.ignore(50, '\n');
        cout << "Enter subject 2: ";
        cin >> student[i].mark.second;
        cin.ignore(50, '\n');
        cout << "Enter mark 2: ";
        cin >> student[i].mark.mr2;
        cin.ignore(50, '\n');
        cout << "Enter subject 3: ";
        cin >> student[i].mark.third;
        cout << "Enter mark 3: ";
        cin >> student[i].mark.mr3;
        cin.ignore(50, '\n');
 
        cout << "-------------------------------------------------------------------------\n";
    }
 
    mr temp;
    for (int i = 0; i < 3; i++)
    {
        for (int j = i+1; j < 4; j++)
        {
            if (strcmp(student[i].name, student[j].name) > 0)
            {
                memcpy_s(&temp, sizeof(mr), &student[i], sizeof(mr));
                memcpy_s(&student[i], sizeof(mr), &student[j], sizeof(mr));
                memcpy_s(&student[j], sizeof(mr), &temp, sizeof(mr));
            }
        }
    }
 
    for (int i = 0; i < 4; i++)
    {
        cout << student[i].name << endl << "Subject: " << student[i].mark.first << endl << "Mark: " << student[i].mark.mr1 << endl;
        cout << "Subject: " << student[i].mark.second << endl << "Mark: " << student[i].mark.mr2 << endl;
        cout << "Subject: " << student[i].mark.third << endl << "Mark: " << student[i].mark.mr3 << endl;
        cout << endl;
    }
 
 
 
 
    system("pause");
}
0
26.05.2020, 16:15
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.05.2020, 16:15
Помогаю со студенческими работами здесь

Сортировка по алфавиту структуры
Прошу помощи, так как уже просто несколько дней подряд никак не получается сделать лабу по...

Структуры.Сортировка фамилий по алфавиту
Не могу отсортировать по фамилиям.Необходимо использовать функцию bool compare(){...},чтобы...

Сортировка записей по алфавиту
всем привет! подскажите плиз! у меня в файле есть записи (там фамилии людей) мне нужно сделать все...

Сортировка структуры по алфавиту
Есть динамический массив структур, в нем лежат имя, фамилия, отчество и номер телефона. Нужно...

Сортировка данных из структуры по алфавиту
Нужно отсортировать данные структуры в алфавитном порядке, но я не могу понять как из структуры...

Сортировка структуры слов по алфавиту
В структуре нам даны имена автора(или просто слова) и другие составляющие(название песни, жанр),...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Как работать с ветками (branch) в Git
InfoMaster 17.01.2025
Система контроля версий Git произвела революцию в процессе разработки программного обеспечения, предоставив разработчикам мощный инструмент для управления изменениями в коде. Одной из наиболее важных. . .
Как откатить последние коммиты в Git
InfoMaster 17.01.2025
Система контроля версий Git стала неотъемлемой частью современной разработки программного обеспечения, предоставляя разработчикам мощные инструменты для управления изменениями в коде. Одним из. . .
Что такое boilerplate и scaffold, чем они отличаются
InfoMaster 17.01.2025
В современном мире разработки программного обеспечения эффективность и скорость создания качественного кода играют crucial роль в успехе проектов. Разработчики постоянно ищут способы оптимизировать. . .
Чем отличаются ссылки и указатели в С++
InfoMaster 17.01.2025
В современном программировании на C++ эффективная работа с памятью является ключевым аспектом разработки качественного программного обеспечения. Указатели и ссылки представляют собой два. . .
В чем разница между PUT и POST
InfoMaster 17.01.2025
В современной веб-разработке правильное использование HTTP-методов играет ключевую роль в создании надежных и эффективных API-интерфейсов. Протокол HTTP прошел долгий путь развития с момента своего. . .
DTO, POCO и Value Object: что это такое, когда и как использовать
InfoMaster 17.01.2025
Введение в паттерны передачи данных В современной разработке программного обеспечения эффективное управление данными и их передача между различными слоями приложения являются ключевыми аспектами. . .
Что такое pull request в Git
InfoMaster 17.01.2025
В современной разработке программного обеспечения pull request в Git представляет собой ключевой механизм для эффективного взаимодействия между разработчиками при работе над общим кодом проекта. По. . .
Как вернуться к предыдущему коммиту в Git
InfoMaster 17.01.2025
Система контроля версий Git представляет собой мощный инструмент для управления изменениями в программном коде, который позволяет разработчикам эффективно отслеживать и контролировать историю. . .
Что такое паттерны программировани­я и проектирования
InfoMaster 17.01.2025
Роль паттернов в современной разработке программного обеспечения В современном мире разработки программного обеспечения паттерны проектирования стали неотъемлемой частью профессионального подхода. . .
Как добавить конструктор Яндекс Карт на сайт
InfoMaster 17.01.2025
Введение в API Яндекс Карт В современной веб-разработке интеграция картографических сервисов стала неотъемлемой частью многих проектов. API Яндекс Карт представляет собой мощный инструмент для. . .
Что такое javascript:void­­(0) и зачем это нужно
InfoMaster 17.01.2025
Когда вы сталкиваетесь с веб-разработкой, особенно с использованием JavaScript, одной из директив, которая часто встречается, является javascript:void(0). Это выражение вызывает интерес из-за своей. . .
Что такое оркестрация и хореография микросервисов
InfoMaster 17.01.2025
Введение в оркестрацию и хореографию микросервисов В современном мире разработки программного обеспечения микросервисная архитектура стала ключевым подходом к созданию масштабируемых и гибких. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru