- •А.Ю. Быков
- •Быков Александр Юрьевич Решение задач на языке
- •Часть 1 84 Введение
- •1. Лабораторная работа № 1. Изучение операций языка Си. Программирование линейных и разветвляющихся алгоритмов
- •1.1. Цель и задачи работы, требования к результатам ее выполнения
- •1.2. Краткая характеристика объекта изучения
- •1.2.1. Понятие переменной и типа данных
- •1.2.2. Стандартные типы языка Си
- •1.2.3. Объявления переменных в языке Си
- •1.2.4. Константы в языке Си
- •1.2.5. Операторы – выражения и операции языка Си
- •1.2.6. Условный оператор
- •1.2.6. Оператор - переключатель
- •1.2.7. Некоторые функции ввода- вывода Функции для вывода в поток stdout
- •Функции для считывания из потока stdin
- •1.3. Задачи и порядок выполнения работы
- •Примеры выполнения работы Пример 1
- •Пример № 2
- •2.2. Краткая характеристика объекта изучения
- •2.3. Задачи и порядок выполнения работы
- •Примеры выполнения работы Пример 1
- •Пример 2
- •3.2. Краткая характеристика объекта изучения
- •3.2.1. Одномерные массивы
- •Int a[100]; // Объявление массива из 100 элементов типа int
- •Инициализация массива
- •3.2.2. Массивы и указатели
- •3.2.3. Строки
- •3.2.4. Динамические массивы
- •3.2.5. Многомерные массивы
- •Инициализация многомерных массивов
- •Динамические многомерные массивы
- •3.3. Задачи и порядок выполнения работы
- •Примеры выполнения работы Пример 1
- •Пример 2
- •4.2. Краткая характеристика объекта изучения
- •Int X; // Поле структуры
- •Int X; // Поле структуры
- •Int X; // Поле структуры
- •Инициализация структуры
- •Int year, page; // Год издания и число страниц
- •4.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •5.2. Краткая характеристика объекта изучения
- •Определение, описание и вызов функции
- •Тип возвращаемого значения и параметры функции main
- •5.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •6.2. Краткая характеристика объекта изучения
- •6.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •7.2. Краткая характеристика объекта изучения
- •7.2.1. Общие сведения о вводе-выводе
- •7.2.2. Ввод- вывод в файлы Открытие файла
- •Закрытие файла
- •Определение конца файла
- •Функции записи в файл
- •Функции чтения из файла
- •Функции позицирования в файлах
- •Функции для сброса буферов ввода- вывода
- •7.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •8.2. Краткая характеристика объекта изучения
- •8.2.1. Сообщения Windows
- •8.2.2. Структура приложения в Windows
- •8.2.3. Вывод графики в Windows Контексты устройств
- •Графические «перья» и «кисти»
- •Функции для вывода графики
- •8.3. Задачи и порядок выполнения работы
- •Пример выполнения работы
- •8.4. Форма отчета по лабораторной работе
- •8.5. Вопросы для самоконтроля
- •4. Сообщения Windows.
- •Заключение
- •Рекомендуемые источники
- •Приложение а. Варианты заданий для выполнения лабораторных работ Варианты заданий для лабораторной работы № 1 Часть 1
- •Часть 2
- •Варианты заданий для лабораторной работы № 2
- •Варианты заданий для лабораторной работы № 3
- •Часть 1. Одномерные массивы
- •Часть 2. Многомерные массивы (матрицы)
- •Варианты заданий для лабораторной работы № 4
- •Варианты заданий для лабораторной работы № 5
- •Варианты заданий для лабораторной работы № 6
- •Варианты заданий для лабораторной работы № 7
- •Варианты заданий для лабораторной работы № 8
Московский государственный технический университет
имени Н.Э. Баумана
Факультет «Информатика и системы управления»
Кафедра «Информационная безопасность»
А.Ю. Быков
Решение задач на языке программирования Си с элементами языка Си++
Методические указания к лабораторным работам
по дисциплине «Алгоритмические языки» для студентов направления 1005010065 – Компьютерная безопасность и 1005030065 – Информационная безопасность автоматизированных систем
Москва
(С) 2015 МГТУ им. Н.Э. БАУМАНА
УДК 004.43
Рецензент:
Быков А.Ю.
Решение задач на языке программирования Си с элементами языка Си++. М.: МГТУ имени Н.Э. Баумана, 2015. 116 с.
Методические указания являются руководством для выполнения лабораторных работ по дисциплине «Алгоритмические языки». Они охватывают основные средства языка программирования Си, иногда используются некоторые возможности языка Си++.
Пособие предназначено для студентов МГТУ имени Н.Э. Баумана, обучающихся по специальностям 1005010065 «Компьютерная безопасность» и 1005030065 «Информационная безопасность автоматизированных систем». Может быть полезна студентам других специальностей, интересующимися программированием.
Рекомендовано учебно-методической комиссией факультета «Информатика и системы управления» МГТУ им. Н.Э. Баумана
Быков Александр Юрьевич Решение задач на языке
программирования Си с элементами языка Си++
© 2015 МГТУ имени Н.Э. Баумана
Оглавление
Введение 5
1. Лабораторная работа № 1. Изучение операций языка Си. Программирование линейных и разветвляющихся алгоритмов 7
1.1. Цель и задачи работы, требования к результатам ее выполнения 7
1.2. Краткая характеристика объекта изучения 7
1.2.1. Понятие переменной и типа данных 7
1.2.2. Стандартные типы языка Си 8
1.2.3. Объявления переменных в языке Си 10
1.2.4. Константы в языке Си 10
1.2.5. Операторы – выражения и операции языка Си 14
1.2.6. Условный оператор 18
1.2.6. Оператор - переключатель 20
1.2.7. Некоторые функции ввода- вывода 22
1.3. Задачи и порядок выполнения работы 27
1.4. Форма отчета по лабораторной работе 29
1.5. Вопросы для самоконтроля 29
2. Лабораторная работа № 2. Изучение операторов- циклов в языке Си 31
2.1. Цель и задачи работы, требования к результатам ее выполнения 31
2.2. Краткая характеристика объекта изучения 31
2.3. Задачи и порядок выполнения работы 33
2.4. Форма отчета по лабораторной работе 35
2.5. Вопросы для самоконтроля 35
3. Лабораторная работа № 3. Изучение массивов в языке Си 37
3.1. Цель и задачи работы, требования к результатам ее выполнения 37
3.2. Краткая характеристика объекта изучения 37
3.2.1. Одномерные массивы 37
3.2.2. Массивы и указатели 38
3.2.3. Строки 39
3.2.4. Динамические массивы 39
3.2.5. Многомерные массивы 40
3.3. Задачи и порядок выполнения работы 42
3.4. Форма отчета по лабораторной работе 45
3.5. Вопросы для самоконтроля 45
4. Лабораторная работа № 4. Изучение структурных типов языка Си 46
4.1. Цель и задачи работы, требования к результатам ее выполнения 46
4.2. Краткая характеристика объекта изучения 46
4.3. Задачи и порядок выполнения работы 48
4.4. Форма отчета по лабораторной работе 50
4.5. Вопросы для самоконтроля 50
5. Лабораторная работа № 5. Изучение функций языка Си 51
5.1. Цель и задачи работы, требования к результатам ее выполнения 51
5.2. Краткая характеристика объекта изучения 51
5.3. Задачи и порядок выполнения работы 55
5.4. Форма отчета по лабораторной работе 57
5.5. Вопросы для самоконтроля 57
6. Лабораторная работа № 6. Изучение динамических структур данных. Списки 58
6.1. Цель и задачи работы, требования к результатам ее выполнения 58
6.2. Краткая характеристика объекта изучения 58
6.3. Задачи и порядок выполнения работы 59
6.4. Форма отчета по лабораторной работе 62
6.5. Вопросы для самоконтроля 62
7. Лабораторная работа № 7. Изучение стандартных функций ввода-вывода в языке Си 63
7.1. Цель и задачи работы, требования к результатам ее выполнения 63
7.2. Краткая характеристика объекта изучения 63
7.2.1. Общие сведения о вводе-выводе 63
7.2.2. Ввод- вывод в файлы 65
7.3. Задачи и порядок выполнения работы 69
7.4. Форма отчета по лабораторной работе 71
7.5. Вопросы для самоконтроля 71
8. Лабораторная работа № 8. Изучение приложений с графическим интерфейсом пользователя для Windows 72
8.1. Цель и задачи работы, требования к результатам ее выполнения 72
8.2. Краткая характеристика объекта изучения 72
8.2.1. Сообщения Windows 72
8.2.2. Структура приложения в Windows 73
8.2.3. Вывод графики в Windows 74
8.3. Задачи и порядок выполнения работы 76
8.4. Форма отчета по лабораторной работе 81
8.5. Вопросы для самоконтроля 81
Заключение 82
Рекомендуемые источники 83
Приложение А. Варианты заданий для выполнения лабораторных работ 84
