Форум программистов, компьютерный форум CyberForum.ru

задание с функцией qsort(). язык C - C++

Восстановить пароль Регистрация
 
aspiredp
 Аватар для aspiredp
0 / 0 / 0
Регистрация: 22.10.2010
Сообщений: 33
22.12.2010, 21:20     задание с функцией qsort(). язык C #1
задание:
составить программу, которая обрабатывает следущие данные про наличие вычислительной техники:
название подраздела, название отдела, численность персонала, количество компьютеров.
Отсортировать за:
- названием подраздела;
- кол-вом компьютеров.

это всё через функции.
язык С. заранее благодарен

Добавлено через 33 минуты
не могу понять как пользоватся этой функцией..
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2010, 21:20     задание с функцией qsort(). язык C
Посмотрите здесь:

qsort C++ C++
C++ Алгоритм работы функции qsort
работа с функцией qsort C++
Возникли трудности с функцией быстрой сортировки qsort C++
qsort C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
RUSya82
 Аватар для RUSya82
236 / 114 / 3
Регистрация: 15.10.2010
Сообщений: 395
22.12.2010, 21:40     задание с функцией qsort(). язык C #2
C++
1
2
void qsort(void *base, size_t nelem, size_t width, int (_USERENTRY
*fcmp)(const void *, const void *));
Первый параметр - указатель на сортируемую последовательность, второй - размер элемента, третий - количество элементов, четвертый - указатель на функцию, которая сравнивает элементы. Эту функцию ты должен написать сам. например:
C++
1
2
3
4
5
int SortFunction(const void *a, const void *b)
{
return (*(int*)a) < (*(int*)b) ?1 :
((*(int*)a) == (*(int*)b) ? 0 : 1);
}
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
22.12.2010, 21:43     задание с функцией qsort(). язык C #3
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
/*...*/
#define STR_LEN 128
typedef struct DEPT{
  char name[STR_LEN];
  char subname[STR_LEN];
  int persons;
  int computers;
} dept_t;
 
int by_name(const void * a, const void * b){
  return strcmp((*(dept_t*)a).name, (*(dept_t*)b).name);
}
 
int by_computers(const void * a, const void * b){
  return (*(dept_t*)a).computers - (*(dept_t*)b).computers;
}
 
/*...*/
#define NUM_DEPTS 10
int main(void){
  dept_t depts[NUM_DEPTS];
 
  /* заполнение массива */
 
  qsort(depts, NUM_DEPTS, sizeof(dept_t), by_name);
  /* отсортирован по названиям */
 
  qsort(depts, NUM_DEPTS, sizeof(dept_t), by_computers);
  /* по количеству компьютеров */
 
  /* ... */
}
как-то так
aspiredp
 Аватар для aspiredp
0 / 0 / 0
Регистрация: 22.10.2010
Сообщений: 33
22.12.2010, 21:58  [ТС]     задание с функцией qsort(). язык C #4
ага, спасибо.
буду разбиратся))
Yandex
Объявления
22.12.2010, 21:58     задание с функцией qsort(). язык C
Ответ Создать тему
Опции темы

Текущее время: 12:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru