Программа курса «Введение в компьютерные технологии», I-1

Язык программирования Си

Данный курс доступен на сайте "Университет без границ".

  1. Основы работы в среде Microsoft Visual Studio. Создание проекта «Win32 Console Application». Основные файлы проекта. Этапы компиляции программ.
  2. Основы синтаксиса языка Си, структура консольного приложения. Ключевые слова. Базовые типы данных (bool, char, int, double). Определение переменных и констант. Выражения, операции, комментарии. Приведение типов. Приоритет операторов.
  3. Директивы препроцессора и их использование.
  4. Блоки и правила видимости переменных. Управляющие операторы (if, goto, switch). Циклы (while, do, for).
  5. Процедурный подход программирования. Определение функции. Прототип функции. Передача параметров в функции по значению, передача массивов в функции. Локальные, глобальные, статические переменные. Рекурсия.
  6. Модульный подход в программировании. Использование *.h файлов. Раздельная компиляция. Внешние (extern) и статические (static) глобальные переменные и функции.
  7. Математические функции стандартной библиотеки Си (<math.h>). Консольный ввод-вывод (<stdio.h>). Форматированный ввод-вывод.
  8. Указатели. Массивы. Передача параметров в функции по указателю. Функции работы с динамической памятью (malloc/free/realloc). Динамические массивы. Сложные декларации, определение синонимов типов (typedef). Указатель на функцию.
  9. Строки Си. Функции работы со строками (<string.h>, <ctype.h>).
  10. Пользовательские типы данных (enum, struct, union).

Фундаментальные алгоритмы программирования

  1. Поиск элемента в массиве.
  2. Поиск последовательности элементов в массиве (метод Боуера-Мура).
  3. Одно- и двусвязные списки.
  4. Методы сортировки массивов (сортировка выбором, быстрая сортировка).

Численные методы

  1. Машинная арифметика, точность вычислений.
  2. Поиск корня уравнения (методы вилки, хорд и касательных).
  3. Интерполяция и экстраполяция значений функции.
  4. Линейная аппроксимация измерений.
  5. Вычисление определенных интегралов (методы прямоугольников, трапеций и Симпсона).

Литература

  1. В.В. Подбельский, С.С. Фомин. «Программирование на языке Си» – Москва,  Финансы и статистика, 2005, 600 с.
  2. Стивен Прата. «Язык программирования C. Лекции и упражнения» – Москва, «Вильямс», 2015, 928 с.
  3. Антонюк В.А., Задорожный С.С., Иванов А.П., Лукашёв А.А., Панов Н.А., Шленов С.А. «Язык программирования Си. Учебно-методическое пособие (I семестр).» – М.: Физический факультет МГУ им. М.В.Ломоносова, 2022, 108 с.
  4. Д.А. Бикулов, Н.В. Иваницкая, А.П. Иванов. «Язык программирования Си, учебно-методическое пособие» – М.: Физический факультет МГУ им. М.В.Ломоносова, 2021, 106 с.
  5. В.А. Антонюк, А.П. Иванов. «Программирование и информатика. Краткий конспект лекций.» – М.: Физический факультет МГУ им. М.В.Ломоносова, 2015, 64 с.
  6. В.А. Антонюк, С.С. Задорожный. «Язык программирования С/С++, часто встречающиеся ошибки при написании программ» – М.: Физический факультет МГУ им. М.В.Ломоносова, 2021, 64 с.
  7. Керниган, Д. Ритчи. «Язык программирования Си» – Санкт-Петербург,  Невский диалект, 2003, 304 с.
  8. Т. Кормен, Ч. Лейзерсон, Р. Ривест, К. Штайн. «Алгоритмы: построение и анализ» – Вильямс, 2011, 1296 c.
  9. Н.Н. Калиткин. «Численные методы» – Москва, Наука, 1978, 592 с.