Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 09.02.2019
Сообщений: 6
1

Сортировка по алфавиту

10.02.2019, 17:22. Показов 564. Ответов 2

Сортировка структуры по алфавиту и дате.

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

Задание: надо отсортировать фамилии студентов по убыванию(то есть по алфавиту, но в обратном порядке) +и по убыванию даты.

Код написала, но сортировка не происходит. Помоги найти ошибку и исправить ошибку.

Код:
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
#include <iostream>
#include <windows.h>
#include <iomanip>
#include <cstdlib>
#include <stdio.h>
#include <cstdio>
#include <string>
using namespace std;
void sortFioData(int size);
void showAr(int size);
void sortSum(int size,double mas[]);
void Vuborka(int size);
void MonthPay(int size);
void delElementProstOneEl( int &size );
void addStud(int &size);
void choise();
void TopPrice(int size);
#define FIO_SIZE 15
#define DAT_SIZE 11
#define AR_SIZE 30
struct stud {
    char fio[AR_SIZE];
    char data[AR_SIZE];
    double breakfast;
    double lunch;
    double supper;
}s1,s2;
stud ar[AR_SIZE]={
 {"Петров О.В",     "2018-11-23", 25.30, 0.0,     75.40},
 {"Иванов А.Р",      "2018-11-14", 45.40, 30.00, 85.70},
 {"Сидоров Д.С",   "2018-11-25", 52.45, 5.30,   20.30},
 {"Николаев В.А",  "2018-11-25", 15.30, 0.0,     60.00},
 {"Петров А.В",      "2018-06-10", 35.30, 59.40, 199.9}
};
int size = 5;
int cmp(stud s1,stud s2);
int cmp2(stud s1, stud s2);
int main ()
{
    int var;
    double mas[100];
    choise();
  }
void sortFioData(int size){    //тут сортировка не работает
    for(int i=0; i>size-1;i++){
        for(int j = i+1; j>size; j++) {
            if ((cmp2(ar[i],ar[j])<0)){
                stud x =  ar[i];
                ar[i] =  ar[j];
                ar[j] =  x;
            }
       }
    }
    showAr(size);
    system("pause");
}
int cmp2(stud s1, stud s2){
    if(strcmp(s1.data,s2.data)!=0)
        return strcmp(s1.data,s2.data);
     return strcmp(s1.fio,s2.fio);
}
void showAr(int size){
    for(int sl=0;sl<size;sl++){
        cout<<setw(12)<<ar[sl].fio
            <<setw(12)<<ar[sl].data
            <<setw(10)<<ar[sl].breakfast
            <<setw(10)<<ar[sl].lunch
            <<setw(10)<<ar[sl].supper
            <<endl;
    }
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.02.2019, 17:22
Ответы с готовыми решениями:

Сортировка по алфавиту
На вход подается некоторое количество описаний книг (автор, название, количество страниц)....

Сортировка по алфавиту
Необходимо произвести сортировку по алфавиту по полю name. #include &quot;stdafx.h&quot; #include...

Сортировка по алфавиту
#include &lt;iostream&gt; #include&lt;cstring&gt; using namespace std; int main() { int...

Сортировка по алфавиту
На вход подается некоторое количество описаний книг (автор, название, количество страниц)....

2
277 / 226 / 93
Регистрация: 27.06.2016
Сообщений: 639
10.02.2019, 17:27 2
Kananweb, i>size-1
Меньше с больше перепутали.
0
0 / 0 / 0
Регистрация: 09.02.2019
Сообщений: 6
10.02.2019, 22:28  [ТС] 3
Так у меня больше и стоит
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.02.2019, 22:28

Сортировка по алфавиту
Не могу сообразить как по алфавиту отсортировать, что нужно изменить? Если можно, то скажите что...

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

Сортировка по алфавиту
Здравствуйте! Помогите отсортировать содержимое каталога по алфавиту. В этом каталоге может...

сортировка по алфавиту
Задача: Описать структуру с именем PRICE, содержащую следующие поля: название товара; ...


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

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

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