Тематический план по курсу «Основы программирования на языке C»

  1. Особенности языка С (функциональные, синтаксические) в сравнении с языком Pascal. Структура программы на С. Программа HELLO. Описание переменных и констант в С. Знакомство с интегрированной средой Turbo-C.

  2. Особенности вывода с помощью функции printf (форматный вывод) по сравнению write (PASCAL). Вывод диапазонов значений основных типов переменных из заголовочных файлов limits.h и float.h. Типичные ошибки.

  3. Операторы присваивания. Операторы инкремента и декремента.

  4. Выражение. Выражение присваивания. Выражение отношения. Соглашение о логических переменных в C. Условное выражение.

  5. Инструкции и блоки. Конструкция if ... else. Вложенные конструкции if ... else. Отличия условного оператора в Pascal и конструкции if ... else в C. Типичные ошибки.

  6. Переключатель switch. Инструкции break. Отличия оператора case ... of в Pascal от переключателя switch в C. Типичные ошибки.

  7. Циклы while и for. Цикл do ... while. Отличия операторов повтора в Pascal от аналогичных операторов в C. Типичные ошибки.

  8. Инструкции break и continue. Оператор, (запятая). Типичные ошибки.

  9. Описание массивов в C. Особенности индексации массивов в C. Типичные ошибки.

  10. Строка — символьный массив, завершающийся нулем. Функции работы со строками (string.h). Типичные ошибки.

  11. Функции. Формальные и фактические параметры. Переменные внешние, локальные, статические. Область видимости переменной и функции. Типичные ошибки.

  12. Информационная структура стек. Реализация ограниченного стека с помощью внешнего массива.

  13. Динамическая область памяти (куча). Рекурсия. Определение и основные понятия. Рекурсивные функции. Типичные ошибки.

  14. Указатели. Определение, описание, назначение. Операции косвенного доступа(*), получение адреса(&). Передача параметров в функцию по ссылке. Функция scanf(…). Возвращение указателя функцией. Типичные ошибки.

  15. Указатели и массивы. Адресная арифметика. Типичные ошибки.

  16. Функции malloc(…), free(…). Оператор sizeof. Реализация динамических массивов в C с помощью указателей. Типичные ошибки.

  17. Файлы текстовые и двоичные. Работа с файлами в C. Функции работы с файлами. Типичные ошибки.

  18. Файловые сортировки. Метод простого слияния.

  19. Двумерные массивы в C. Массив указателей. Типичные ошибки.

  20. Структуры. Определение, описание, использование. Присваивание структур. Передача структур в качестве параметров функции. Возвращение структуры в качестве результата функции. Типичные ошибки.

  21. Указатели на структуры. Передача указателя на структуру в качестве параметра функции. Возвращение указателя на структуру в качестве результата функции.

  22. Создание пользовательских типов данных. Реализация динамических строк с помощью структур.

  23. Типы данных с ссылками на себя. Линейный список. Типичные ошибки.

  24. Подсчет частот слов в текстовом файле.

  25. Инверсия линейного списка.

  26. Двунаправленный список.

  27. Древовидные структуры. Бинарное дерево основные понятия и определения. Основные операции с бинарными деревьями (обходы). Типичные ошибки.

  28. Построение дерева поиска. Поиск по дереву с включением. Типичные ошибки.