/
bvs22
/
draft
Обзор
Документация
Войти
/
bvs22
/
draft
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
example_usage/documentation_example.h
42 строки
2 KB
Batomunkuev Vladimir
Add header files examples and documentation
05 дек 2024, 12:30
05 дек 2024, 12:30
82e06a5
Код
Авторство
О чём код?
/** * @brief Класс для работы со студентами * @author Vladimir * @date 2024 */ typedef struct Student* Student; /** * @brief Создает нового студента * @param name Имя студента * @param age Возраст студента (должен быть > 0) * @return Указатель на нового студента или NULL при ошибке * @warning Не забудьте освободить память с помощью destroy_student() * @see destroy_student * @example * Student s = create_student("Ivan", 20); * if (s == NULL) { * printf("Ошибка!\n"); * } */ Student create_student(const char* name, int age); /** * @brief Устанавливает оценку студента * @param student Указатель на студента * @param grade Оценка (от 2 до 5) * @return 0 при успехе, -1 при ошибке * @throws ERROR_NULL_POINTER если student == NULL * @throws ERROR_INVALID_GRADE если grade < 2 или grade > 5 */ int set_grade(Student student, int grade); /** * @brief Вычисляет среднюю оценку группы * @details Функция проходит по всем студентам в группе, * суммирует их оценки и делит на количество студентов. * Студенты без оценок не учитываются. * @param students Массив указателей на студентов * @param count Количество студентов в массиве * @return Средняя оценка или -1.0 при ошибке */ double calculate_average(Student* students, int count);