Тест с ответами по основам программирования для студентов

. Укажите правильно организован цикл для обработки всех элементов массива, размерность которого n
— For (int i = 1; i <= n; i + +)
— For (int i = 0; i <= n; i + +)
— For (int i = 1; i <n; i + +)
+ For (int i = 0; i <n; i + +)

2. Приведенный фрагмент программы решает задачу вычисления суммы элементов массива. Какие команды соответствуют выделенной команде?
int n [100]; int S = 0
for (int k = 0; k <100; k + +) S = S + n [k];
+ For (int k = 0; k <100; k + +) S + = n [k];
— For (int k = 0; k <100; k + +, S = S + n [k]);
+ For (int k = 0; k <100; S = S + n [k], k + +)
— For (int k = 0; k <100;) S = S + n [k]; k + +;

3. Проанализируйте приведенный фрагмент программы. Выберите верное утверждение, касающееся данного фрагмента
int L = 0
for (ini k = 0; k <n; k + +)
if (a [k] <0) L + +;
— Находим индекс первого отрицательного элемента
+ Находим индекс последнего отрицательного элемента
+ Если отрицательного элемента нет, переменная L укажет на первый элемент массива
— Если отрицательного элемента нет, переменная L будет иметь значение за пределами индексов массива

4. Укажите тип данных, определяет служебное слово struct:
— Массив данных с различной структурой;
— Тип функций, которые могут иметь различную структуру параметров;
— Тип данных, которые могут менять свою структуру;
+ Составной объект, к которому могут входить элементы различных типов.

5. Укажите элементы, которые может содержать структура:
+ Только поля;
— Только функции;
— Поля и функции;

6. Укажите типы доступа возможные для элементов структур:
— Любые;
— Только закрытые;
+ Только открытые;
— Только защищены

7. Из предоставленных вариантов инициализации массива данных выберите правильный:
— Int a [4] = 2,4,16,8;
— Int a [4] = (2,4,16,8)
— Int a [4] = [2,4,16,8];
+ Int a [4] = {2,4,16,8}
8. Определите, для чего предназначены конструкторы класса:
— Для конструирования класса;
— Для инициализации объектов класса;
+ Для выделения памяти объектам класса;
— Для объявления объектов класса

9. Укажите конструктор, который будет вызван компилятором, если объект A класса Point объявить таким образом — Poиnt A:
+ Конструктор по умолчанию;
— Конструктор копирования;
— Конструктор присваивания;
— Конструктор перемещения;
— Конструктор с параметрами

10. Выберите, какие виды конструкторов является в С +:
+ Конструктор по умолчанию;
+ Конструктор копирования;
— Конструктор присваивания;
— Конструктор перемещения;
+ Конструктор с параметрами

11. Укажите, когда вызывается деструктор объекта
— После вызова конструктора этого объекта;
+ При завершении программы;
— Когда программа выходит из области действия объекта;
— После вызова деструктора этого объекта
+ При исполнении операции delete для динамического объекта

12. Укажите, какой тип возвращают конструкторы объектов:
— void
— int
— char
— double
+ Не возвращают никакого

13. Определите, что такое производный класс:
+ Класс, построенный на основе другого класса
— Класс, на основе которого построен другой класс
— Класс, на основе которого построено ни одного класса
— Класс, у которого кроме элементов являются методы

14. Укажите, какие спецификаторы доступа не существуют
— public
— protected
— private
+ open

15. Определите, имеет доступ производный класс к закрытым элементов своего базового класса:
— имеет
+ нет
— Имеет при открытом наследования
— Имеет при отсутствии спецификатора наследования

16. Определите, что такое множественное наследование:
— Наследование нескольких производных классов от одного базового
+ Наследования производного класса от нескольких базовых
— Наследование производного класса с спецификатором many
— Наследование производного класса от класса, который является производным от другого класса

17. Дано фрагмент кода, содержащий вызов метода класса:
Pro p1 (2,5)
p1.Show ();
Определить прототип функции- элемента класса
— Void Show (int a, int b)
— Void pro :: Show (int a, int b)
— Void Show (Pro &)
+ Void Show ();

18. Даны два экземпляра класса. Каким может быть его объявление?
Pro P1, P2;
— Class Pro
{Int a, b; Pro (int, int);}
+ Class Pro
{Int a, b; }
— Class Pro
{Int a, b; Pro (Pro &) Pro (int, int);}
— Class Pro
{Int a, b; Pro (Pro &) }

19. Даны объявления класса. Создать 2 экземпляра класса:
class Point
{Int x, y;
public:
void Show ();
};
— Point t1; Point t2 (10,50)
+ Point t1; Point t2;
— Point t1 (100,100) Point t2 (10,50)
— Point t1 (50,50) Point t2 ();

 

20. Дано описание класса. Определить правильную реализацию метода:
class person
{
char name [20];
int age;
void Init (char *, int);
} X;
Предоставить переменной х конкретных значений
— Void Init (char * a, int b) {strcpy (name, a) age = b};
— Void Init (char * a, int b) {name = a; age = b};
+ Void person :: Init (char * a, int b) {strcpy (name, a) age = b};
— Void person :: Init (char * a, int b) {name = a; age = b};

21. Даны объявления класса. Определить количество полей и методов:
class Tovar
{Char * nazva; int price;
void Show ();
Tovar ();
Tovar (char *, int);
};
— 2 поля, 1 способ
— 2 поля, 2 метода
+ 2 поля, 3 метода
— 3 поля, 2 метода
— 5 полей, метод нет

Ссылка на основную публикацию