1.1. Мета викладання дисципліни: є вивчення основних синтаксичних конструкцій мови програмування С, які відповідають стандарту ANSI (American National Standards Institute). В курсі дається однозначне і машинно-незалежне визначення мови С, яке підтримується всіма платформами.
Для досягнення мети передбачається вивчення таких основних розділів: структура програми, етапи проходження програми, типи даних, класи пам’яті, робота з масивами, рядками, структурами, використання вказівників, функції введення/виведення даних, функції динамічного розподілу/звільнення пам’яті, функції для роботи з введенням/виведенням потокового і низького рівнів, директиви препроцесора, відео режими, робота з графікою тощо.
1.2. Завдання вивчення дисципліни полягає в тому, щоб студент оволодів необхідними знаннями синтаксису і семантики мови С і вільно оперував конструкціями мови для написання програм.
1.3. Компетенції, якими має оволодіти студент у процесі вивчення дисципліни: у результаті вивчення дисципліни студенти повинні знати, як використовувати основні конструкції мови С для програмування типових алгоритмів.
Студент повинен вміти застосовувати теоретичний матеріал до написання програм, які пропонуються як у завданнях лабораторних робіт даного курсу, так і в процесі подальшого навчання.
Освітньо-кваліфікаційний рівень підготовки – бакалавр,
Шифр та назва напряму – 0403 – Прикладна математика,
спеціальність – 6.040301 – Прикладна математика.
Кількість кредитів –– 6.
Загальна кількість годин –– 144 год.
Кількість годин на тиждень –– 4 год. (2 лекц., 2 лаб.);
Дисципліна вільного вибору студента.
Читається в III семестрі.
Відведено: на лекції –– 34 год., на лабораторні –– 34 год.,
на самостійну роботу студентів –– 76 год.
Вид підсумкового контролю: екзамен.
Змістовно - діяльнісна структура модулів
навчальної дисципліни„Мова програмування С”
| Компетенції (прогнозовані результати навчання | Назва модуля (М) або навчального елементу (НЕ) | Зміст навчального елементу | Вид заняття | Види діяльності та поточного контролю | К-сть балів за вид рообти | ІНДЗ (за вибором) | К-сть балів за ІНДЗ | Всього балів за НЕ | |||||||
| Лекція | П Практика | Сам. робота[1] | Лаб. заняття | ||||||||||||
| Модуль 1. Основні синтаксичні конструкції мови С | |||||||||||||||
| Знати: структуру програми та етапи її проходження, типи і опис даних Вміти:створюати просту програму з в введенням/виведенням і операторами присвоєння | НЕ 1.1. Елементи мови С | Загальна характеристика мови програмування С. Основні елементи мови С. Константи. Ідентифікатори. Ключові слова. Коментарі. Структура програми. Етапи проходження програми. Категорії типів даних. Опис даних. Діапазони даних. Введення/виведення даних (функції printf(), scanf()). Специфікації перетворення, модифікатори. | – | – | Виконання частини лабораторної роботи №1 | – | – | – | – | ||||||
| Знати:оператори управління програмою, правила обчисленні виразів Вміти:розробляти прості програми | НЕ 1.2. Операції та оператори | Операнди й операції. Арифметичні операції і операції присвоєння Операції заперечення і доповнення. Операції розадресації й знаходження адреси. Операція sizeof. Перетворення при обчисленні виразів. Адитивні операції. Операції зсуву. Порозрядні операції. Логічні операції. Умовна операція. Операції збільшення і зменшення. Пріоритети операцій і порядок обчислень. Перетворення типів. Порожній оператор. Складений оператор. Оператор if. Оператор switch. Оператор break. Оператор for. Оператор while. Оператор do while. Оператор continue. Оператор return. Оператор goto. | – | – | Виконання лабораторної роботи №1 | – | – | ||||||||
| Знати: всі відомості про функції Вміти:розробляти програми з використанням бібліотечних функцій і функцій користувача | НЕ 1.3. Функції і класи пам’яті | Визначення і виклик функцій. Загальні відимості. Опис типів функції. Передача параметрів функції main. Рекурсивні функції. Бібліотечні функцій Turbo C. Прототипи функцій. Час життя й область видимості програмних об'єктів. Ініціалізація глобальних і локальних змінних. Класи пам’яті. Автоматичні, регістрові, статичні і зовнішні змінні. | – | – | Виконання частини лабораторної роботи №2 | – | – | – | – | ||||||
| Знати: способи визначення масивів Вміти:використовувати одновимірні і багатовимірні масиви у функціях | НЕ 1.4. Масиви | Опис масивів та їх ініціалізація. Багатовимірні масиви. Розміщення елементів масивів у пам’яті. Передача масивів у функцію. | – | – | Виконання завдання 1 лабораторної роботи №2 | – | – | ||||||||
| Знати: способи визначення рядків, введення і виведення рядків Вміти: використовувати бібліотечні функції для роботи з рядками | НЕ 1.5. Робота з рядками | Опис та ініціалізація символьних рядків. Функції введення і виведення рядків. Інші функції роботи з рядками. Перевірка і перетворення символів і символьних рядків. Типові задачі з рядками. | – | – | Виконання завдання 2 лабораторної роботи №2 | – | – | ||||||||
| Підсумкова контрольна робота | – | – | |||||||||||||
| Всього за модулем 1 | |||||||||||||||
| Модуль 2. Розширені можливості програмування мовою С | |||||||||||||||
| Знати: що таке вказівники, операції над ними та їх застосування Вміти:використовувати вказівники при роботі зі звичайними масивами і рядками, створювати зв’язані динамічні структури, | НЕ 2.1. Динамічний розподіл пам’яті | Операція &. Вказівники. Адресна арифметика. Операція непрямої адресації. Функції динамічного розподілу пам’яті. Методи доступу до елементів масивів. Вказівники на багатовимірні масиви. Вказівники на структури. Операції з вказівниками. Масиви вказівників. Динамічне розміщення масивів. Динамічні структури даних. Послідовне і зв’язане зберігання списків. Основні функції для роботи з чергами, стеками, списками. | – | – | Виконання лабораторної роботи №3 | – | – | ||||||||
| Знати: способи визначення структури об’єднання і поля бітів Вміти:використовувати ці типи даних у програмі | НЕ 2.2. Структуровані типи даних | Опис та ініціалізація структури. Масиви структур. Вказівники на структуру. Передача структур функціям. Операції над структурами. Об’єднання. Поля бітів. Засіб позначення типу typedef. Тип перерахування enum. | – | – | Виконання лабораторної роботи №4 | – | – | ||||||||
| Знати: різні типи введення/виведення файлів Вміти:використовувати ці типи у програмі для роботи з файлами | НЕ 2.3. Робота з файлами | Функції вводу/виводу потоку. Текстові потоки, двійкові потоки. Відкриття і закриття файла. Робота з файлами (ввід/вивід символа, рядка, форматований ввід/вивід). Функції вводу/виводу нижнього рівня (відкриття, закриття файла, функції вводу/виводу). Ввід/вивід консолі та порту. | – | – | Виконання лабораторної роботи №5 | – | – | ||||||||
| Знати: роботу у графічному і текстовому режимах Вміти: малювати графічні примітиви | НЕ 2.4. Графіка | Відеорежими. Системи координат екрану. Символьна і растрова графіка в мові C. Ініціалізація графіки. Управління кольорами. Основні графічні функції. Малювання пікселя, відрізка, прямокутника, кола. | – | – | – | – | – | – | – | – | |||||
| Знати: інструкції препроцесора і особливості передачі параметрів у функції Вміти:застосовувати команди препроцесора, створювати функції із змінним числом аргументів. | НЕ 2.5. Додаткові можливості | Директиви препроцесора. Включення файлу. Макрозасоби. Умовна компіляція. Умовне виконання директив препроцесора. Формальні параметри функції main. Функції із змінним числом аргументів. | – | – | Модифікація функцій з лабораторних робіт | – | – | – | – | ||||||
| Підсумкова контрольна робота | – | – | |||||||||||||
| Всього за модулем 2 | |||||||||||||||
| Модуль контроль (підсумковий) | – | – | – | – | |||||||||||
| Всього балів | |||||||||||||||






