Програмування мовою С

Шпак З. Я.
Код: 978-617-607-104-4
Навчальний посібник. Друге видання, доповнене. Львів: Видавництво Львівської політехніки, 2011. 436 с. Формат 170 х 240 мм. М'яка обкладинка.
Ціна:499,00грн.
Weight: 0 кг

Навчальний посібник достатньо ґрунтовно охоплює різні аспекти програмування мовою С. У початкових розділах розглянуто синтаксис та семантику всіх конструктивних компонентів мови: лексем, виразів, операторів, функцій. Значну увагу приділено різновидам стандартних і користувацьких типів даних, зокрема опрацюванню масивів, символьних рядків, структур тощо. Другу половину посібника присвячено програмним реалізаціям практичних задач, серед яких створення і застосування лінійних динамічних списків і двійкових дерев, організація обміну даними з файлами і редагування їхнього вмісту, керування екранними зображеннями та інші. У додатках подано повні описи функцій з основних бібліотек С.
Викладений матеріал базується на стандарті ANSI/ISO мови С, водночас зазначено зміни та доповнення, затверджені в стандарті С 1999 р. Наведено важливу для практичного програмування інформацію про додаткові можливості компілятора, середовища та бібліотек Borland С/C++.
Для студентів, які вивчають програмування у межах різних навчальних дисциплін, а також для всіх, хто бажає глибоко опанувати мову С.
Рекомендувало Міністерство освіти і науки України як навчальний посібник.

Зміст

Передмова

Розділ 1. БАЗОВІ ЕЛЕМЕНТИ МОВИ.
1.1. Алфавіт.
1.2. Лексеми.
Запитання для самоконтролю.

Розділ 2. СТРУКТУРА С-ПРОГРАМИ. ВИКОНАННЯ ПРОГРАМ.
2.1. Приклад короткої програми.
2.2. Структура програми.
2.3. Запис та оформлення програми.
2.4. Етапи виконання програми.
Запитання та завдання для самоконтролю.

Розділ 3. ТИПИ ДАНИХ.
3.1. Класифікація типів даних.
3.2. Цілочислові типи.
3.3. Дійсні типи.
3.4. Описи змінних.
3.5. Переліки.
Запитання та завдання для самоконтролю.

Розділ 4. ВИРАЗИ ТА ОПЕРАЦІЇ.
4.1. Порядок виконання операцій.
4.2. Арифметичні операції.
4.3. Порозрядні операції.
4.4. Операції порівняння.
4.5. Логічні операції.
4.6. Операції присвоєння.
4.7. Умовна операція.
4.8. Операція розміру sizeof.
4.9. Узгодження типів у виразах.
4.10. Стандартні математичні функції.
4.11. Макроси з параметрами.
Запитання та завдання для самоконтролю.

Розділ 5. ФОРМАТНЕ ВИВЕДЕННЯ ТА ВВЕДЕННЯ ДАНИХ.
5.1. Форматне виведення даних.
5.2. Форматне введення даних.
Запитання та завдання для самоконтролю.

Розділ 6. ОПЕРАТОРИ.
6.1. Оператори-вирази.
6.2. Умовні оператори.
6.3. Оператори циклу.
6.4. Оператори переходу.
6.5. Використання псевдовипадкових чисел.
Запитання та завдання для самоконтролю.

Розділ 7. ВКАЗІВНИКИ.
7.1. Оголошення вказівників, звертання до даних через вказівники.
7.2. Адресна арифметика.
7.3. void-вказівники. Типізація вказівників.
Запитання та завдання для самоконтролю.

Розділ 8. МАСИВИ.
8.1. Одновимірні масиви.
8.2. Багатовимірні масиви.
Запитання та завдання для самоконтролю.

Розділ 9. СИМВОЛЬНІ РЯДКИ.
9.1. Оголошення та ініціалізація символьних рядків.
9.2. Звертання до елементів символьних рядків.
9.3. Введення / виведення символів і символьних рядків.
9.4. Бібліотечні функції для роботи зі символами та символьними рядками.
9.5. Масиви символьних рядків і масиви вказівників.
Запитання та завдання для самоконтролю.

Розділ 10. СТРУКТУРИ ТА ОБ’ЄДНАННЯ.
10.1. Структури.
10.2. Перейменування типів.
10.3. Об’єднання.
10.4. Поля бітів.
Запитання та завдання для самоконтролю.

Розділ 11. ФУНКЦІЇ.
11.1. Структура функцій.
11.2. Виклик функції. Прототипи функцій.
11.3. Взаємодія фактичних і формальних параметрів функції.
11.4. inline-функції.
11.5. Масиви та символьні рядки як параметри функцій.
11.6. Робота з параметрами командного рядка.
11.7. Багатовимірні масиви як параметри функцій.
11.8. Опрацювання структур у функціях.
11.9. Вказівники на функції.
11.10. Рекурсивні функції.
11.11. Функції з неоголошеними параметрами.
Запитання та завдання для самоконтролю.

Розділ 12. КЛАСИ ПАМ’ЯТІ ДАНИХ.
12.1. Клас пам’яті, час існування та видимість об’єкта.
12.2. Специфікатори класів пам’яті.
12.3. Багатофайлові програми.
Запитання та завдання для самоконтролю.

Розділ 13. РОБОТА З ДАНИМИ В ДИНАМІЧНІЙ ПАМ’ЯТІ.
13.1. Стандартні функції динамічного виділення пам’яті.
13.2. Використання масивів вказівників на динамічні дані.
13.3. Динамічні списки.
13.4. Двійкові дерева.
Запитання та завдання для самоконтролю.

Розділ 14. МОДЕЛІ ПАМ’ЯТІ BORLAND C. КОРОТКІ Й ДОВГІ ВКАЗІВНИКИ.
14.1. Сегментна організація пам’яті.
14.2. Моделі розподілу пам’яті.
14.3. Короткі та довгі вказівники. Модифікатори вказівників.
14.4. Безпосереднє програмування відеопам’яті.
14.5. Особливості звертання до динамічної пам’яті через функції Borland C.
Запитання та завдання для самоконтролю.

Розділ 15. ОБМІН ДАНИМИ З ФАЙЛАМИ.
15.1. Файли і потоки, буферизація даних.
15.2. Групи функцій для роботи з потоками.
15.3. Відкриття / закриття потоків.
15.4. Стандартні потоки, перескерування потоків.
15.5. Функції потокового введення / виведення даних.
15.6. Встановлення поточної позиції файла.
15.7. Функції аналізу помилок.
15.8. Керування буферизацією даних.
15.9. Витирання та перейменування файлів.
15.10. Інші засоби для роботи з файлами.
Запитання та завдання для самоконтролю.

Розділ 16. КОНСОЛЬНИЙ ОБМІН ДАНИМИ.
16.1. Керування консольним виведенням текстової інформації.
16.2. Консольне введення даних.
Запитання та завдання для самоконтролю.

Розділ 17. ДИРЕКТИВИ ПРЕПРОЦЕСОРА.
17.1. Директива приєднання #include.
17.2. Директиви макропідстановок #define та #undef .
17.3. Директиви умовної компіляції.
17.4. Стандартні макроси.
17.5. Перегляд результатів препроцесування.
17.6. Інші директиви препроцесора.
Запитання та завдання для самоконтролю.

Додаток 1. Таблиці кодування символів.
Додаток 2. Функції бібліотеки Borland C.
Додаток 3. Нове в стандарті С-99.
Список літератури.
Предметний покажчик.