- •Министерство образования и науки украины
- •Лабораторная работа № 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 часа)
- •Теоретические сведения
- •Виртуальные базовые классы
- •Виртуальные деструкторы
- •Ход работы
- •Литература
- •Выходные данные
Контрольные вопросы для подготовки и самостоятельной работы
Какие классы памяти (КП) допустимы применительно к переменным и функциям?
Какие классы памяти используются для переменных и функций по умолчанию?
Назовите область действия и время жизни данных и функций с различными классами памяти.
Можно ли использовать переменные с КП register в левой части выражения присваивания?
В каких случаях можно использовать переменные, а также функции с одинаковыми именами?
Можно ли переобъявить переменную во вложенных блоках? Какова область действия таких переменных?
Можно ли получить доступ к глобальной переменной в блоке, где объявлена локальная переменная с тем же именем?
Производится ли инициализация переменных с различными классами памяти?
Сколько раз производится инициализация переменных с КП static, объявленных в теле функции?
Какую информацию содержат заголовочные файлы и где они находятся?
Как предотвратить повторное включение заголовочных файлов в нескольких модулях?
Лабораторная работа № 19
Изучение графических средств С
(2 часа)
Цель работы: приобрести практические навыки в использовании графических функций языка С .
Теоретические сведения
Графические функции предназначены для управления видеорежимами работы дисплея, выводом графической информации на экран.
Графические функции
void far detectgraph(int far *graphdriver, int far *graphmode); – определение доступного видео-драйвера.
void far initgraph(int far * graphdriver, int far *graphmode, char far *pathtodriver); - установка видеорежима.
void far setgraphmode(int mode); - установка видеорежима.
void far restorecrtmode(void); - временный переход из графического видеорежима в текстовый.
void far closegraph(void); - закрытие графической системы.
void far setvisualpage(int page); - установка активной видеостраницы.
void far setactivepage(void); -вывод на активную видеостраницу.
int far getmaxx(void); - определение максимального значения координаты х.
int far getmaxy(void); - определение максимального значения координаты у.
void far setviewport(int left, int top, int right, int botton, int clip); - установка нового графического окна.
void far getviewsettings(struct viewporttype far *viewport); - получение параметров текущего окна.
void far moveto(int x, int y); void far moverel(int dx, int dy); - перемещение текущей графической позиции в координаты x, y или на величину dx, dy.
void far setlinestyle(int linestyle, unsigned upattern, int thickness); - установка типа линии.
int far getx(void); - получить текущую графическую позицию (х).
int far gety(void); - получить текущую графическую позицию (у).
void far clearviewport(void); - очистка текущего графического окна.
void far cleardevice(void); - очистить активную видеостраницу.
int far getmaxcolor(void); -определить максимальное количество цветов.
void far setpalette(int colornum, int color); - установка палитры.
void far setbkcolor(int color); -установка цвета фона.
Доступ к пикселям
unsigned far getpixel(int x, int y); - получить текущие параметры пикселя.
void far putpixel(int x, int y, int color); - вывести пиксель с параметрами.