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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.04.2011, 15:08   #1
Ильдар1212
Новичок
Джуниор
 
Регистрация: 25.04.2011
Сообщений: 4
По умолчанию Программа С++

здравствуйте, помогите доделать лабораторную, первую часть решил и не могу вторую, т.е. нужно сделать сортировку по алфавиту...
Вот задача:
1. Описать структуру с именем STUDENT, содержащую следующие поля:
• фамилия и инициалы;
• номер группы;
• успеваемость (массив из пяти элементов);
2. Написать программу, выполняющую следующие действия:
• ввод с клавиатуры данных в массив, состоящий из десяти структур типа STUDENT; записи должны быть упорядочены по альфавиту;
• вывод на дисплей фамилий и номеров групп для всех студентов, имеющих хотя бы одну оценку 2;
•если таких студентов нет, вывести соответствующее сообщение.
Код:
#include <iostream>
using namespace std;
struct STUDENT 
{	
		char name[256];
		int namberGroup;
		float uspevaimost[5];
};
void main()
		{
				int j,i;
				STUDENT massive[10];
				for (j=0; j<10; j++)
					{
						cout<<" Name: ";				cin>>massive[j].name;
						cout<<" namberGroup: ";			cin>>massive[j].namberGroup;
						cout<<" uspevaimost[0]: ";		cin>>massive[j].uspevaimost[0];
						cout<<" uspevaimost[1]: ";		cin>>massive[j].uspevaimost[1];
						cout<<" uspevaimost[2]: ";		cin>>massive[j].uspevaimost[2];
						cout<<" uspevaimost[3]: ";		cin>>massive[j].uspevaimost[3];
						cout<<" uspevaimost[4]: ";		cin>>massive[j].uspevaimost[4];
		}
				
			
		int k;
		cin>>k;

		}

нужна помощь начиная вот отсюда:

записи должны быть упорядочены по альфавиту;
• вывод на дисплей фамилий и номеров групп для всех студентов, имеющих хотя бы одну оценку 2;
•если таких студентов нет, вывести соответствующее сообщение.
Ильдар1212 вне форума Ответить с цитированием
Старый 25.04.2011, 20:50   #2
onewho
Форумчанин
 
Регистрация: 29.09.2010
Сообщений: 636
По умолчанию

сортировка:
Код:
int cmp(const void* a, const void* b) {
return strcmp(((STUDENT*)a)->name,((STUDENT*)b)->name);
}

qsort(massive,sizeof(massive)/sizeof(massive[0]),sizeof(massive[0]),cmp);
onewho вне форума Ответить с цитированием
Старый 25.04.2011, 21:27   #3
Ильдар1212
Новичок
Джуниор
 
Регистрация: 25.04.2011
Сообщений: 4
По умолчанию

куда сортировку вставить?
Ильдар1212 вне форума Ответить с цитированием
Старый 25.04.2011, 21:36   #4
Ильдар1212
Новичок
Джуниор
 
Регистрация: 25.04.2011
Сообщений: 4
По умолчанию

куда вставить сортировку???
Ильдар1212 вне форума Ответить с цитированием
Старый 26.04.2011, 15:07   #5
Ильдар1212
Новичок
Джуниор
 
Регистрация: 25.04.2011
Сообщений: 4
По умолчанию

Находит 2 ошибки не знаю как исправить, помогите....
Код:
#include <iostream>
using namespace std;
struct STUDENT 
{	
		int name;
		char namberGroup;
		float uspevaimost[5];
};
void main()
		{
				int j;
					char a,b;
				STUDENT massive[10];
				for (j=0; j<10; j++)
					{
						cout<<" Name: ";				cin>>massive[j].name;
						cout<<" namberGroup: ";			cin>>massive[j].namberGroup;
						cout<<" uspevaimost[0]: ";		cin>>massive[j].uspevaimost[0];
						cout<<" uspevaimost[1]: ";		cin>>massive[j].uspevaimost[1];
						cout<<" uspevaimost[2]: ";		cin>>massive[j].uspevaimost[2];
						cout<<" uspevaimost[3]: ";		cin>>massive[j].uspevaimost[3];
						cout<<" uspevaimost[4]: ";		cin>>massive[j].uspevaimost[4];
					}
				
		

char cdecl strcmp(const void* a, const void* b);
 {
int strcmp(((STUDENT*)a)->name);((STUDENT*)b)->name;


qsort(massive,sizeof(massive)/sizeof(massive[0]),sizeof(massive[0]),massive[j].name);
	 	}
	
		int k;
		cin>>k;
}

вот эти ошибки:::

Ошибка 1 error C2664: qsort: невозможно преобразовать параметр 4 из "int" в "int (__cdecl *)(const void *,const void *)" c:\users\1\documents\visual studio 2010\projects\999\444\444.cpp 33 1 444

2 IntelliSense: аргумент типа "int" несовместим с параметром типа "int (__cdecl *)(const void *, const void *)" c:\users\1\documents\visual studio 2010\projects\999\444\444.cpp 33 69 444

Последний раз редактировалось Ильдар1212; 26.04.2011 в 17:18.
Ильдар1212 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программа открыается если есть другая программа. bookkc Паскаль, Turbo Pascal, PascalABC.NET 12 14.10.2009 20:09
[PASCAL]Программа создания файла, программа обработки файла Виколяшка Фриланс 7 23.09.2009 17:38
Программа создания файла, программа обработки файла [PASCAL] Виколяшка Помощь студентам 1 22.09.2009 22:56
Программа ben95 Общие вопросы Delphi 1 04.01.2008 20:52