Сортировка массива структур по полю в алфавитном порядке - C (СИ)
Формулировка задачи:
Доброго время суток,уважаемые. Прошу помощи в написании кода)
Имеется массив структур:
struct lab { char str_1[M];// Фамилия char str_2[M];// Отдел int c;// Зарплата int d;// Кол-во детей } st[N];Нужно отсортировать структуры по полю "фамилия",которое является строкой, в алфавитном порядке. Желательно без функций сортировки, как-нибудь элементарно. Полностью программу писать не нужно,она уже написана, нужна лишь часть - сортировка. Всем откликнувшимся огромное спасибо.
Код к задаче: «Сортировка массива структур по полю в алфавитном порядке - C (СИ)»
#include <stdlib.h> #include <string.h> /* после объявления массива структур */ int cmp(const void * a, const void * b) { return strcmp(((struct lab*)a)->str_1, ((struct lab*)b)->str_1); } /* где-то в программе */ qsort(st, N, sizeof(struct lab), cmp);
7 голосов, оценка 4.143 из 5
СОХРАНИТЬ ССЫЛКУ