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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.10.2010, 12:36   #1
nats
Пользователь
 
Регистрация: 15.10.2010
Сообщений: 65
По умолчанию Cортировка структуры (С++)

Здраствуйте...нужно провести сортировку структуры по среднему балу...помогите пожалуйста
Листинг программы:
Код:
struct zhurnal{
int Num,oc[5];
float ser;
char Fam[15];

};
zhurnal List[5];
void stvstr(){
char s[80];
for (int i = 0; i < n; i++)
{
float sum=0;
cout << "Num " << " -- "; cin >>  List[i].Num;
cout << "Fam "; cin >>  s;  strcpy( List[i].Fam, s );
for (int j = 0; j < 5; j++)
{
cout << "Ozenka  " << j+1<<" -- ";
cin >> List[i].oc[j];
sum+=List[i].oc[j];
}
List[i].ser=sum/j;
cout<<"Seredniy bal =  "<<List[i].ser<<endl;
cout<<endl;
}
cout<<"--------------------------------------------------------------------------------";
cout<<endl;
}
void vuvedstr(){
for (int i = 0; i < n; i++)
{
cout <<List[i].Num << "  " << List[i].Fam <<"   ";
for (int j = 0; j < 5; j++) cout <<List[i].oc[j]<< "   " ;
cout<<"Seredni bal = "<<List[i].ser;
cout<<endl;
}

cout<<endl;
cout<<"--------------------------------------------------------------------------------";
cout<<endl;
}

Последний раз редактировалось Stilet; 15.10.2010 в 13:10.
nats вне форума Ответить с цитированием
Старый 15.10.2010, 13:14   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Вопрос в башню: STL библиотеку использовать разрешено?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 15.10.2010, 13:23   #3
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

достали люди, мешающие си с плюсами. это во-первых. во-вторых, как сортировать? qsort сишный можно/нужно использовать? стльный сорт с предикатом можно/нужно использовать? или ручная сортировка? если ручная, выбери алгоритм сортировки и вперед, сравнивай значение среднего балла и меняй местами свои структуры
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 15.10.2010, 13:29   #4
nats
Пользователь
 
Регистрация: 15.10.2010
Сообщений: 65
По умолчанию

мне нужен код а не слова. Сортировка ручная. Метод не имеет значения

Stilet нет. нужна просто сортировка без наворотов(

Последний раз редактировалось Stilet; 15.10.2010 в 14:43.
nats вне форума Ответить с цитированием
Старый 15.10.2010, 14:36   #5
sever-42
Пользователь
 
Регистрация: 22.04.2010
Сообщений: 96
По умолчанию

Код:
for (i = 0; i < N; ++i) {
		for (j = 0; j < M; ++j) {
			if (List[i].ser > List[j].ser) {
				swap(List[i], List[j]);
			}
		}
	}
	void swap(zhurnal &list1, zhurnal &list2)
	{
		//меняешь структуры.
	}
include <Qt>
sever-42 вне форума Ответить с цитированием
Старый 15.10.2010, 16:03   #6
nats
Пользователь
 
Регистрация: 15.10.2010
Сообщений: 65
По умолчанию

сенкс большое

пишет Funcion swap should have a prototype хотя библиотеки подключены

Последний раз редактировалось Stilet; 15.10.2010 в 16:54.
nats вне форума Ответить с цитированием
Старый 15.10.2010, 16:54   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Наверное ее прототип имеется ввиду из хеадера algorithm
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 15.10.2010, 17:01   #8
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

swap - это функция, меняющая местами первый и второй аргументы. Реализовать ее не составляет особого труда.
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 15.10.2010, 18:39   #9
nats
Пользователь
 
Регистрация: 15.10.2010
Сообщений: 65
По умолчанию

Stilet стоп а swap это функция STL? т
nats вне форума Ответить с цитированием
Старый 15.10.2010, 18:45   #10
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2Stilet
Цитата:
Наверное ее прототип имеется ввиду из хеадера algorithm
тут предполагалось использование своей функции swap. автор ее использовал без предварительного объявления, вот и получил ошибку. но т.к в стл есть одноименная функция, то да, можно просто подключить хидер
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Cортировка матрицы fort-_-minor Общие вопросы C/C++ 4 05.08.2010 13:47
C++ Cортировка savva Помощь студентам 3 12.07.2010 04:05
Cортировка C++ Sonny01 Помощь студентам 0 08.04.2010 20:38
Cортировка по алфавиту со стеками skiffter Помощь студентам 0 30.03.2010 21:11
Cортировка односвязного списка alesfoss Общие вопросы C/C++ 3 30.03.2009 19:46