Мы используем файлы cookies для улучшения работы сайта НИУ ВШЭ и большего удобства его использования. Более подробную информацию об использовании файлов cookies можно найти здесь, наши правила обработки персональных данных – здесь. Продолжая пользоваться сайтом, вы подтверждаете, что были проинформированы об использовании файлов cookies сайтом НИУ ВШЭ и согласны с нашими правилами обработки персональных данных. Вы можете отключить файлы cookies в настройках Вашего браузера.

  • A
  • A
  • A
  • АБВ
  • АБВ
  • АБВ
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
12
Октябрь

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

2024/2025
Учебный год
RUS
Обучение ведется на русском языке
5
Кредиты
Статус:
Курс обязательный
Когда читается:
1-й курс, 1, 2 модуль

Преподаватель

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

Аннотация

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

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

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

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

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

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

  • Раздел 1. Типы, операторы и выражения языка Си
  • Раздел 2. Управляющие конструкции
  • Раздел 3. Функции и структура программы
  • Раздел 4. Организация памяти, указатели, массивы
  • Раздел 5. Структуры
  • Раздел 6. Ввод и вывод
Элементы контроля

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

  • неблокирующий Контрольный опрос
    Контрольный опрос проводится в виде теста и является текущей формой контроля самостоятельной работы студентов. Каждый студент получает вариант с 5 вопросами
  • блокирующий Экзамен
    экзамен проводится в рамках промежуточного контроля виде перечня вопросов. Каждый студент получает вариант с 10 вопросами
  • неблокирующий Практическое задание
    лабораторные работы студенты выполняют в рамках самостоятельной работы. По итогам работы оформляется отчёт и проводится сдача работы преподавателю во время практических занятий.
  • блокирующий Экзамен
    экзамен проводится в рамках промежуточного контроля в виде перечня вопросов. Каждый студент получает вариант с 10 вопросами
Промежуточная аттестация

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

  • 2024/2025 1st module
    0.5 * Контрольный опрос + 0.5 * Экзамен
  • 2024/2025 2nd module
    0.5 * Практическое задание + 0.5 * Экзамен
Список литературы

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

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

  • Кривцов, А. Н. Алгоритмизация и программирование. Основы программирования на С/С++ : учебное пособие / А. Н. Кривцов, С. В. Хорошенко. — Санкт-Петербург : СПбГУТ им. М.А. Бонч-Бруевича, 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). — Режим доступа: для авториз. пользователей.

Авторы

  • Марковская Наталья Владимировна
  • Овчинников Андрей Анатольевич