- •Министерство образования и науки украины
- •Лабораторная работа № 1
- •Ход работы
- •Требования к отчетам
- •Отчёт должен содержать
- •Вопросы для контроля и самостоятельной работы
- •Лабораторная работа №2
- •Символы типа
- •Ход работы
- •Вопросы для контроля и самостоятельной работы
- •Лабораторная работа №3 Разработка программ со скалярными типами данных (2 часа)
- •Теоретические сведения
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №4 Разработка программ с циклическими вычислительными процессами
- •Теоретические сведения
- •Алгоритм работы оператора цикла for ():
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №5 Разветвляющийся вычислительный процесс с различными логическими условиями: оператор if... Else, условная операция (?:), оператор switch, оператор break, оператор goto (2 часа)
- •Теоретические сведения
- •Условная тернарная операция (?:)
- •Оператор варианта switch
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №6 Операции с, их приоритеты и использование. Преобразование типов (4 часа)
- •Теоретические сведения
- •Приоритет операций и порядок выполнения (ассоциативность)
- •Преобразование типов
- •(Новый_тип) операнд
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №7
- •Синтаксис определения функций в с
- •Использование локальных и глобальных переменных в функциях. Вызов функции
- •Ход работы
- •Требования к содержанию отчёта приведены в лабораторной работе №1. Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №8 Разработка программ с указателями (2 часа)
- •Теоретические сведения
- •Основные операции с указателями
- •Указатели и целые величины
- •Динамическое размещение указателей в памяти
- •Ход работы
- •Требования к содержанию отчёта приведены в лабораторной работе №1. Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №9 Массивы. Селективная обработка массивов
- •Теоретические сведения
- •Ход работы
- •Требования к содержанию отчёта приведены в лабораторной работе №1
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №10
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №11
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа № 12
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа № 13
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа № 14
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа № 15 Использование указателей для работы с составными типами данных (2часа)
- •Теоретические сведения
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа № 16
- •Указатели как параметры функции
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №17
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа № 18
- •Использование администратора проектов
- •Lab18.Cpp- Основной файл проекта
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа № 19
- •Доступ к пикселям
- •Графические примитивы
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №20 Разработка программ с использованием классов (2 часа)
- •Теоретические сведения
- •Объявление и определение класса
- •Тело класса
- •Использование класса
- •Инкапсуляция. Управление доступом к членам класса
- •Классы памяти для объектов
- •Использование данных-членов класса
- •Ход работы
- •Требования к содержанию отчёта приведены в лабораторной работе №1. Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №21
- •Инициализация объектов класса
- •Деструкторы
- •Вызов деструкторов
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №22 Использование наследования для создания иерархии классов (2 часа)
- •Теоретические сведения
- •"Друзья" классов (friend)
- •Ход работы
- •Контрольные вопросы для подготовки и самостоятельной работы
- •Лабораторная работа №23 Использование виртуальных и указателей для работы с объектами классов (2 часа)
- •Теоретические сведения
- •Виртуальные базовые классы
- •Виртуальные деструкторы
- •Ход работы
- •Литература
- •Выходные данные
Контрольные вопросы для подготовки и самостоятельной работы
Какой тип должно иметь выражение в операторах if и switch?
Можно ли использовать оператор goto для передачи управления на else, метку case…; default:?
С помощью каких операторов можно досрочно завершить выполнение операторов if…else, switch?
Можно ли использовать в качестве выражения в операторе switch указатель?
Можно ли использовать в качестве константного выражения в операторе switch константу?
Обязательно ли использовать оператор break в операторе switch? Каково его действие? Что происходит при отсутствии break?
Какому из вложенных операторов if относится else при наличии и отсутствии операторных скобок и .
Какие типы операндов допустимы в условной операции (? :)?
Объясните работу операторов в приведенных примерах.
Как объявить и использовать метки в программе?
Лабораторная работа №6 Операции с, их приоритеты и использование. Преобразование типов (4 часа)
Цель работы: Изучить основные логические, арифметические и другие операции С, научиться правильно составлять выражения С, изучить приоритеты операций С, научиться использовать преобразование типов.
Теоретические сведения
Язык С имеет мощную арифметическую и логическую основу, которая позволяет быстро, компактно и эффективно писать код программы. В С разработано множество базовых арифметических и логических операций, а также функции библиотеки математической поддержки языка. Операндами операций могут быть выражения определённых видов, зависящих от операции. В простейшем случае операндами являются переменные. Переменные, прежде чем они будут использованы, должны быть объявлены с определённым спецификатором типа.
Таблица 6.1 - допустимые операции над переменными
АРИФМЕТИЧЕСКИЕ ОПЕРАЦИИ | ||
Операция |
Пояснение |
Пример |
* |
Умножение |
A=b*c; |
/ |
Деление (для целых – нацело) |
a=b/c; |
% |
Остаток от деления (для целых) |
a=b%c; |
операция x = + = ; - = ; * = ; / = ; % = |
составное присваивание Изменить и заменить |
a+=3; или a=a+3; a%=c; или a=a%c; |
++ |
Инкремент(увеличить на 1) |
с++ ; или с=с+1; + + а |
-- |
Декремент(уменьшить на 1) |
с-- ; или с=с-1; - - а |
+ |
Бинарный плюс (сложение) |
A=b+c; |
- |
Бинарный минус (вычитание) |
A=b-c; |
ЛОГИЧЕСКИЕ ОПЕРАЦИИ | ||
Операция |
Пояснение |
Пример |
&& |
"И" |
a&&b |
|| |
"ИЛИ" |
a||b |
! |
"НЕ" |
!a |
== |
"РАВНО" |
a= =b |
!= |
"НЕ РАВНО" |
a!=b |
> |
"БОЛЬШЕ" |
a>b |
>= |
"БОЛЬШЕ ИЛИ РАВНО" |
a>=b |
< |
"МЕНЬШЕ" |
a<b |
<= |
"МЕНЬШЕ ИЛИ РАВНО" |
a<=b |
ПОБИТОВЫЕ ОПЕРАЦИИ (ПОРАЗРЯДНЫЕ) | ||
Операция |
Пояснение |
Пример |
& |
“И” (and) |
1&1=1; 1&0=0 ;0&0=0; |
| |
“ИЛИ” (or) |
1 | 1=1 ; 1 | 0 =1 ; 0 | 0=0; |
^ |
“ИСКЛЮЧАЮЩЕЕ ИЛИ” |
(xor) 1^1 = 0 ; 1 ^ 0=1 ; 0^0=0; |
~ |
“ОТРИЦАНИЕ” (not) |
~1=0; ~0=; |
<< |
“СДВИГ ВЛЕВО” (shl) |
0001b<<2=0100b; (буква b означает что число двоичное) |
>> |
“СДВИГ ВПРАВО” (shr) |
0010b >> 1=0001b; |
операция_х= |
составное присваивание. Изменить и заменить, где операция_х может быть: &,|,^,>>,<<. |
а&=b или a = &b a^=b или a = a^b a<<=b или a<<b |