- •Вопрос 1. Диалоговые программы. Понятие дружественности.
- •Вопрос 2. Условный оператор и условная операция
- •If (выражение) оператор_1 [else оператор_2]
- •Вопрос 3. Операции отрицания и побитового дополнения.
- •Вопрос 4. Логические операции.
- •Вопрос 5. Побитовые операции
- •Вопрос 6. Изменение типа выражения
- •Вопрос 8. Операция «адрес» и косвенной адресации (разадресации)
- •Вопрос 9. Структура объявления типов. Классы памяти
- •● Static — статическая
- •● Extern — внешняя (глобальная)
- •Extern int total; // ссылка на переменную total, определённую в другом файле ● register — регистровая (локальная)
- •Вопрос 10. Классификация типов данных с размерами в памяти (в байтах).
- •Вопрос 11. Подпрограммы в языке Си. Определение функции. Возврат значений.
- •Int maximum (int X; int y; int z) – формальные параметры
- •Вопрос 12. Передача в подпрограмму массивов
- •Вопрос 13. Объявление, вызов функции и возврат значений
- •Вопрос 14. Работа с файлами
- •Где *fname – имя файла, *mode – режим
- •Вопрос 15. Вызов функций с переменным числом аргументов
- •Вопрос 16. Возврат из функции нескольких значений.
- •Вопрос 17. Структура программы и время жизни переменных, объявленных на внутреннем уровне.
- •Вопрос 18. Общая структура программы, состоящей из нескольких файлов. Локальные и глобальные переменные. Переменные, видимые в нескольких файлах.
- •Вопрос 19. Время жизни и области видимости функций и переменных, объявленных на внешнем уровне.
- •Вопрос 20. Типы, определяемые пользователем. Структуры
- •Вопрос 21. Объединения
- •Вопрос 22. Поля битов
- •Вопрос 23. Динамическая память. Резервирование, освобождение памяти в языке с
- •Оператор new
- •New type_name [(инициатор)]; или new (type_name [(инициатор)]);
- •Оператор delete
- •Вопрос 25. Связные динамические структуры. Списки. Двусвязные списки
- •Вопрос 26. Связные динамические структуры. Очередь. Односвязные списки
- •Вопрос 27. Связные динамические структуры. Кольцевые списки.
- •Вопрос 28. Связные динамические структуры. Стек.
- •Вопрос 29. Нелинейные динамические структуры. Деревья
- •Основные характеристики дерева:
- •Вопрос 30. Перегрузка функций
- •Вопрос 31. Перегрузка операторов
- •{ Операторы, определяющие действия }
- •Вопрос 32. Основные принципы объектно-ориентированного программирования.
- •Вопрос 33. Понятие класса. Инкапсуляция
- •Вопрос 34. Конструкторы и деструкторы
- •Вопрос 35. Наследование
- •Режимы доступа
- •Вопрос 36. Полиморфизм
- •Вопрос 37. Структуризация. Восходящее программирование
- •Вопрос 38. Нисходящий метод проектирования программ
- •Вопрос 39. Методы тестирования программных средств, состоящих из одного модуля
- •Вопрос 40. Спецификация программного средства
- •Вопрос 41. Межмодульное тестирование
- •Вопрос 42. Основы доказательства правильности программ
- •Вопрос 43. Жизненный цикл программы
- •Вопрос 44. Причины отказов по и повышение отказоустойчивости
- •Вопрос 45. Направления в программировании. Классификация языков программирования. Направления в программировании:
- •Вопрос 46. Критерии качества программы
- •Вопрос 47. Директивы препроцессора. Директива define, макроподстановки
- •#Define имя значение
- •Удаление определения: #undef
- •Вопрос 48. Модульное программирование. Структура программы, состоящей из нескольких файлов.
- •Вопрос 49. Гост 19.701. Виды схем, символов. Обозначения для схем алгоритмов и схем работы системы.
Вопрос 27. Связные динамические структуры. Кольцевые списки.
Динамические структуры данных — это любая структура данных, занимаемый объем памяти которой не является фиксированным.
Кольцевые списки – это такие же динамические данные, как и линейные списки, но имеющие дополнительную связь между последним и первым элементами списка:
Стек – это частный случай линейного односвязного списка, для которого разрешено добавлять или удалять элемент только с одного конца списка – вершины (головы) стека.
Стек (магазин) – отличается от очереди тем, что она организована по принципу LIFO (last in − first out): «последним пришел − первым ушел».
Стек можно представить в виде трубы с одним запаянным концом, куда помещаются «бочонки» – элементы:
Если число элементов не может превышать некоторой величины, то стек называется ограниченным, максимальное число элементов в нем − это глубина стека. Стек, в котором нет ни одного элемента, называется пустым.
Операции над стеком:
1) занести элемент в стек;
2) посмотреть, что находится на вершине стека (не удаляя);
3) выбрать элемент из стека.
При этом элемент, находящийся в вершине стека, должен быть присвоен в качестве значения некоторой переменной, а звено, в котором был представлен этот элемент, должно быть исключено из стека.
Вопрос 28. Связные динамические структуры. Стек.
Динамические структуры данных — это любая структура данных, занимаемый объем памяти которой не является фиксированным.
Стек – это частный случай линейного односвязного списка, для которого разрешено добавлять или удалять элемент только с одного конца списка – вершины (головы) стека.
Стек (магазин) – отличается от очереди тем, что она организована по принципу LIFO (last in − first out): «последним пришел − первым ушел».
Стек можно представить в виде трубы с одним запаянным концом, куда помещаются «бочонки» – элементы:
Если число элементов не может превышать некоторой величины, то стек называется ограниченным, максимальное число элементов в нем − это глубина стека. Стек, в котором нет ни одного элемента, называется пустым.
Операции над стеком:
1) занести элемент в стек;
2) посмотреть, что находится на вершине стека (не удаляя);
3) выбрать элемент из стека.
При этом элемент, находящийся в вершине стека, должен быть присвоен в качестве значения некоторой переменной, а звено, в котором был представлен этот элемент, должно быть исключено из стека.
Вопрос 29. Нелинейные динамические структуры. Деревья
Дерево — это нелинейная динамическая структура данных, представляющая собой иерархическую модель, в которой элементы (называемые узлами) соединены отношениями «родитель-дочерний».
Основные характеристики дерева:
Один узел называется корнем (root).
Каждый узел может иметь ноль или более дочерних узлов.
У каждого узла (кроме корня) есть один родитель.
Нет циклов (дерево — ациклический граф).
Дерево с n узлами имеет (n – 1) рёбер.
Вопрос 30. Перегрузка функций
Полиморфизм - один из путей его реализации - это перегрузка функций.
Перегрузка функций — это механизм С++, благодаря которому функции с разным количеством или типами параметров могут иметь одинаковое имя (идентификатор).
Для перегрузки функций нужно определить две функции с одним и тем же именем и типом возвращаемого значения, которые отличаются количеством параметров или их типом.
int add_values(int a,int b) {
return(a + b); )
int add_values (int a, int b, int c) (
return(a + b + c);
