- •Максимов м.Н.
- •3. Скалярные типы и выражения 51
- •5. Адреса, указатели, массивы, память 96
- •6. Функции, указатели, ссылки 133
- •7 Структуры, объединения и классы 171
- •Введение
- •Модуль 1
- •1.2. Этапы подготовки исполняемой программы
- •1.3. Системы счисления
- •Представление чисел от 0 до 16 в разных системах счисления
- •2.1. Общие сведения о программах, лексемах и алфавите
- •2.2. Идентификаторы и служебные слова
- •2.3. Типы данных
- •2.4. Константы
- •Типы, выбираемые компилятором по умолчанию для целых констант
- •ZzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzТаблица 2.3 Данные вещественного типа
- •2.5. Операции
- •2.6. Разделители
- •3. Скалярные типы и выражения
- •3.1. Определение и описание переменных
- •3.2. Явное и неявное преобразование типа
- •Проектные задания
- •Тесты рубежного контроля
- •Квалиметрическая оценка
- •Список литературы
- •Модуль 2
- •4.1. Последовательно выполняемые операторы
- •4.2. Операторы выбора
- •If( выражение) оператор_1 else оператор_2
- •4.3. Операторы цикла
- •4.4. Операторы передачи управления
- •If (условие) break;
- •4.5. Примеры численного моделирования цепей первого порядка
- •5. Адреса, указатели, массивы, память
- •5.1. Указатели и адреса объектов
- •5.2. Адресная арифметика, типы указателей и операции над ними
- •5.3. Свойства указателя типа void*
- •5.4. Свойства объекта cout
- •5.5. Массивы и указатели
- •5.6. Многомерные массивы, массивы указателей, динамические массивы
- •Проектные задания к модулю
- •Тесты рубежного контроля
- •Квалиметрическая оценка
- •6.2. Функции с переменным количеством параметров
- •6.3. Рекурсивные функции
- •6.4. Подставляемые (инлайн-) функции
- •6.5. Функции и массивы
- •6.6. Указатели на функции
- •Void f3(float) (...) // Определение функции
- •Int* f4(char *){...} // Определение функции
- •Проектные задания
- •Тесты рубежного контроля
- •Квалиметрическая оценка
- •Модуль 4
- •7 Структуры, объединения и классы
- •7.1 Структура как тип и совокупность данных
- •7.3 Объединения разнотипных данных
- •7.4 Деревья
- •7.5 Битовые поля структур и объединений
- •7.6 Компонентные функции структурированных объектов
- •7.7 Расширение действия (перегрузка) стандартных операций
- •7.8 Доступ к компонентам структурированного объекта
- •7.9 Классы и шаблоны
- •Проектные задания
- •Тесты рубежного контроля
- •Квалиметрическая оценка
- •Список литературы
- •Приложение 1
- •Приложение 2 Стандартная библиотека функций языка Си
Проектные задания
Определите новый тип данных, описывающий товар в магазине.
Перечислите какие операции определены над структурированными объектами по умолчанию.
Назовите какие операции определены над линейным списком.
Перечислите чем структура отличается от объединения.
Определите с помощью оператора define синоним для имени структурированного типа.
Напишите в произвольном порядке фамилии учеников вашей группы и составте на основании этого списка бинарное дерево.
Набирите и отладте пример реализации типа «комплексное число».
Перепишите класс комплексное число, перегрузив операции +, ‑
Перепишите класс комплексное число, сделав его параметризированным
Тесты рубежного контроля
Как с помощью имени стркутурированного объекта получить доступ к его полям?
С помощью операции точка
С помоью операции запятая
С помощью операции стрелочка.
Как с помощью указателя на структурированный объект получить доступ к его полям данных?
С помощью операции стрелочка.
С помощью операции запятая
С помощью операции присваивание.
С помощью каких ключевых слов прораммист может определить структурированный объект?
struct
typedef
define
Линейный список, операции вставки и удаления элементов которого происходит на разных концах списка называется:
Дек
Очередь
Стек
Линейный список, операции вставки и удаления элементов которого происходит только на одном конце списка называется:
Дек
Очередь
Стек
Как в структурированном объекте определяется статический компонент?
С помощью ключевого слова extern
С помощью ключевого слова auto
С помощью ключевого слова static
Что такое this ?
Указатель на структурированный объект.
Ключевое слово
Когда вызывается конструктор по умолчанию?
При создании структурированных объектов без параметров
При создании структурированных объектов с параметрами
При копировании структурированных объектов по значению
При преобразовании типа структурированного объекта
Когда вызывается конструктор для структурированного объекта?
При создании структурированных объектов без параметров
При создании структурированных объектов с параметрами
При копировании структурированных объектов по значению
При преобразовании типа структурированного объекта
Когда вызывается конструктор копии для структурированного объекта?
При создании структурированных объектов без параметров
При создании структурированных объектов с параметрами
При копировании структурированных объектов по значению
При преобразовании типа структурированного объекта
Когда вызывается конструктор преобразования типа для структурированного объекта?
При создании структурированных объектов без параметров
При создании структурированных объектов с параметрами
При копировании структурированных объектов по значению
При преобразовании типа структурированного объекта
В какую компонентную функцию при её вызове скрыто не передаётся указатель this?
В конструктор
В деструктор
В статическую компонентную функцию
Какая из перечисленных операций не может быть перегружена?
+
‑
#
Можно ли менять арность операции?
Да
Нет
Можно, но при некоторых условиях
Можно ли менять ранг операции?
Да
Нет
Можно, но при некоторых условиях
Что означает спецификатор доступа public?
общедоступный
частный
защещённый
Что означает спецификатор доступа protected?
общедоступный
частный
защещённый
Что означает спецификатор доступа private?
общедоступный
частный
защещённый
С помощью какого ключевого слова создаются параметризированные классы
Template
Private
Typedef
18 Можно ли не определять в классе конструктор копии?
Да
Нет
Да, но только в определённых случаях.
Таблица правильных ответов
№ Вопроса |
Правильный ответ |
№ Вопроса |
Правильный ответ |
1 |
A |
11 |
D |
2 |
A |
12 |
C |
3 |
A |
13 |
C |
4 |
B |
14 |
B |
5 |
C |
15 |
B |
6 |
C |
16 |
A |
7 |
A |
17 |
C |
8 |
A |
18 |
B |
9 |
B |
19 |
A |
10 |
C |
20 |
C |