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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.03.2013, 22:44   #1
Avicii
Пользователь
 
Регистрация: 02.12.2012
Сообщений: 10
По умолчанию Сортировка с++

Здравствуйте,помогите доделать программу ,хотелось бы узнать. Имеется список студентов с датой рождения,т.е день,месяц,год.Как сделать сортировку если например все люди одного года,т.е по месяцам и соответсвенно, если месяца одинаковые то по дням.
Вот мой прогресс остановился на сортировке по меясяцам и дням.Подскажите пожалуйста.
Код:
#include <iostream>
#include <stdio.h>
using namespace std;
struct student {char fio [20];
                int den;
                int month;
                int god;};
int main()
{int i,j,n=3;
student gr[5],s,f;
    for (i=0;i<n;i++)
  {printf("FIO :");
   scanf("%s", &gr[i].fio);
   printf ("Year Born :");
   scanf ("%d",&gr[i].den);
   scanf ("%d",&gr[i].month);
   scanf ("%d",&gr[i].god);
  }
printf ("Po vozrasty:\n");
{for (i=0;i<n;i++)
for (j=0;j<i;j++)
if (gr[i].god>gr[j].god) //сортировка по годам работает
 {s=gr[i];
 gr[i]=gr[j];
 gr[j]=s;}

if (gr[i].god==gr[j].god) //сортировка по мсяцам ( не работает)
 {if(gr[i].month>gr[j].month)
     f=gr[i];
 gr[i]=gr[j];
 gr[j]=f;}
 }
for (i=0;i<n;i++)
cout<<gr[i].den<<" "<<gr[i].month<<" "<<gr[i].god<<" "<<gr[i].fio<<endl;
return 0;
}
Avicii вне форума Ответить с цитированием
Старый 22.03.2013, 23:00   #2
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Напишите отдельную функцию типа
Код:
bool IsGreaterThan(student first, student second)
и вызывайте её вместо простого сравнения года.

Конкретно Ваш код не работает потому, что кто-то забыл поставить после if операторные скобки {}.
Abstraction вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Быстрая сортировка(сортировка Хоара). Сортировка фрагмента массива [C++] druger Помощь студентам 0 20.04.2012 15:49
Сортировка Шелла и Шейкер-сортировка AleksandrMakarov Паскаль, Turbo Pascal, PascalABC.NET 11 11.03.2012 12:18
Сортировка массива методами предсортировки и слияния, и пирамидальная сортировка. lenny_24 Помощь студентам 2 17.04.2011 18:57
паскаль,одномерный массив,сортировка вставка,сортировка убывания,от максимального до конца немозг Помощь студентам 11 06.02.2010 21:57
Сортировка файлов в Explorer vs сортировка в Delphi mutabor Общие вопросы Delphi 11 04.09.2009 14:32