• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site

Programming Languages

2025/2026
Academic Year
RUS
Instruction in Russian
Delivered at:
Department of Informatics
Course type:
Compulsory course
When:
1 year, 1, 2 module

Instructor


Линский Евгений Михайлович

Программа дисциплины

Аннотация

Изучение данной дисциплины базируется на знании студентами основ математики и информатики в пределах программы средней школы. В основе дисциплины лежит изучение программирования на языке Си. Конструкции языка Cи близко сопоставляются типичным машинным инструкциям, благодаря чему он традиционно является одним из основных языков системного программирования. Изучение языка закладывает фундамент как для перехода к концепциям объектно-ориентированного программирования, так и для освоения языков низкого уровня, а также языков описания аппаратуры. Основные положения дисциплины должны быть использованы в дальнейшем при изучении следующих дисциплин: Алгоритмы и структуры данных, Объектно-ориентированное программирование, Программирование на языке Verilog.
Цель освоения дисциплины

Цель освоения дисциплины

  • Формирование у студентов теоретических знаний и практических навыков в области разработки программного обеспечения на языке Cи.
Планируемые результаты обучения

Планируемые результаты обучения

  • знать основные типы алгоритмов
  • знать представление информации в ЭВМ, основные типы данных, используемые в ЭВМ
  • знать этапы разработки программы; синтаксис языка С
  • уметь формализовать решение вычислительных задач в виде алгоритма
  • уметь записывать алгоритм в терминах языка C
  • уметь составлять программы на языке высокого уровня
  • владеть навыками использования основных методов, способов и средств получения, хранения, переработки информации
  • владеть навыками составления, компиляции, отладки программы на языке C
  • владеть навыками самостоятельного создания оригинальных программ для решения практических задач
  • уметь работать с разными видами представления информации
  • знать процесс превращения программы в машинный код (компилятор, ассемблер, линковщик)
  • знать, что такое указатели
  • знать, как устроена карта памяти (стек и куча)
  • знать, что такое указатели на функции и интрузивные списки
  • знать, как устроен вызов функции
  • владеть навыками использования библиотек
  • владеть навыкам отладки программ
  • владеть навыками организации процесса построения программы из исходных кодов (gcc, make)
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Раздел 1.
  • Раздел 2.
  • Раздел 3.
  • Раздел 4.
  • Раздел 5.
  • Раздел 6.
  • Раздел 7.
    Обзор стандартной библиотеки C. string.h (memcpy, memcmp, strcpy, strcmp, strcat, strstr, strchr, strtok) stdlib.h (atoi, strtoll, srand/rand, qsort)
  • Раздел 8.
  • Раздел 9.
Элементы контроля

Элементы контроля

  • неблокирующий Лабораторная работа
  • блокирующий Экзамен
  • неблокирующий Домашнее задание
Промежуточная аттестация

Промежуточная аттестация

  • 2025/2026 1st module
    1 * Домашнее задание
  • 2025/2026 2nd module
    0.3 * Домашнее задание + 0.3 * Лабораторная работа + 0.4 * Экзамен
Список литературы

Список литературы

Рекомендуемая основная литература

  • Кривцов, А. Н. Алгоритмизация и программирование. Основы программирования на С/С++ : учебное пособие / А. Н. Кривцов, С. В. Хорошенко. — Санкт-Петербург : СПбГУТ им. М.А. Бонч-Бруевича, 2020. — 202 с. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/180057 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
  • Рацеев, С. М. Программирование на языке Си : учебное пособие для вузов / С. М. Рацеев. — Санкт-Петербург : Лань, 2022. — 332 с. — ISBN 978-5-8114-8585-7. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/193320 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
  • Солдатенко, И. С. Практическое введение в язык программирования Си : учебное пособие / И. С. Солдатенко, И. В. Попов. — Санкт-Петербург : Лань, 2022. — 132 с. — ISBN 978-5-8114-3150-2. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/213149 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.

Рекомендуемая дополнительная литература

  • Канцедал, С. А. Алгоритмизация и программирование : учебное пособие / C. А. Канцедал. — Москва : ФОРУМ : ИНФРА-М, 2021. — 352 с. — (Среднее профессиональное образование). - ISBN 978-5-8199-0727-6. - Текст : электронный. - URL: https://znanium.com/catalog/product/1189320
  • Кетков, Ю. Л. Введение в языки программирования C и C++ : учебное пособие / Ю. Л. Кетков. — 2-е изд. — Москва : ИНТУИТ, 2016. — 291 с. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/100719 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.

Авторы

  • Любавина Светлана Вячеславовна
  • Юдаева Оксана Юрьевна