Тест: С++ программирование


Список вопросов


1. Название главной функции в проекте?

1) mainfunction()
2) Source.cpp
3) MAIN()
4) main()
5) Func()

2. Как подключить стандартную библиотеку iostream?

1) #include
2) #include “iostream.h”
3) #include
4) #include
5) #include iostream

3. Сколько аргументов можно передать в функцию?

1) В функцию нельзя передавать аргументы
2) Сколько угодно
3) 1
4) До 5
5) До 10

4. Где правильно указана переменная?

1) int num =
2) done = true;
3) var str =
4) char sym = 'a';
5) float x = 32,14;

5. Что покажет код ниже? int const a = 5; a++; cout << a;

1) Ошибку
2) 4
3) 6
4) 5

6. Что покажет код ниже? int a = 8; int *b = &a; cout << ++*b << endl;

1) 8
2) 9
3) Адрес переменной а в памяти
4) Адрес переменной b в памяти
5) Ошибку

7. В каком варианте правильно указан комментарий?

1) / комментарий
2) / комментарий /
3) */ комментарий /*
4) / / комментарий
5) /* комментарий */

8. Чем отличаются модификаторы доступа private и protectred?

1) Private - приватный, а protected - защищенный
2) Protected-члены класса доступны вне класса
3) Protected-члены класса доступны в наследниках
4) Никаких отличий между этими модификаторами доступа нет
5) Protected-члены класса не доступны в дружеских классах (функциях), а private-члены - доступны

9. Сколько параметров можно передавать в конструктор?

1) До 10
2) Столько же, сколько и атрибутов у класса
3) 1
4) В конструктор нельзя передавать параметры
5) Сколько угодно

10. Сколько параметров можно передавать в деструктор?

1) Сколько угодно
2) В деструктор нельзя передавать параметры
3) До 10
4) 1
5) Столько же, сколько и атрибутов у класса

11. Что такое атрибут класса?

1) Переменная в классе
2) Переменная в функции main()
3) Глобальная переменная
4) То же самое, что и параметр
5) То, что пишется в private-секции

12. Сколько может быть конструкторов в классе?

1) Сколько угодно
2) 1
3) 3 - по умолчанию, с параметрами и конструктор копирования
4) Столько же, сколько и атрибутов
5) До 10

13. Сколько может быть деструкторов в классе?

1) Столько же, сколько и атрибутов
2) 2 - обычный и виртуальный
3) 1
4) До 10
5) Сколько угодно

14. Является ли деструктор методом класса?

1) Да
2) Нет
3) В зависимости от реализации

15. Что такое абстрактный класс?

1) Класс, у которого нет атрибутов
2) Класс, у которого нет конструкторов
3) Класс, у которого нет деструктора
4) Класс, от которого нельзя создать объекты
5) Класс, от которого нельзя наследовать другие классы

16. У какого класса обязательно должен быть хотя бы один чисто виртуальный метод?

1) У виртуального
2) У абстрактного
3) У пользовательского
4) У класса-наследника
5) У класса-родителя

17. Что покажет следующий код? class MyClass { int a = 15; public: static void Print() { cout << this.a << endl; } }; int main() { MyClass a; a.Print(); } ;

1) 15
2) Ничего не выведет
3) Ошибку
4) Адрес объекта а
5) Адрес переменной а

18. Что покажет следующий код? class MyClass { int a = 15; friend void Print(MyClass& obj); }; void Print(MyClass& obj) { cout << obj.a++ << endl; } int main() { MyClass a; Print(a); }

1) 15
2) 16
3) Ошибку
4) Ничего не выведет

19. Что такое виртуальный класс в с++?

1) То же самое, что и абстрактный
2) Класс, от которого нельзя создать объект
3) Класс, у которого все методы чисто виртуальные
4) Класс, у которого все методы виртуальные
5) В с++ такого понятия, как виртуальный класс, не существует

20. Как вызываются конструкторы и деструкторы при наследовании?

1) Конструкторы - от предка к потомку, деструкторы - наоборот
2) Конструкторы - от потомка к предку, деструкторы - наоборот
3) И те, и те вызываются от потомка к предку
4) И те, и те вызываются от предка к потомку
5) При наследовании конструкторы и деструкторы предков вообще не вызываются

21. Что покажет следующий код? class Transport { protected: double speed = 0; }; class Car : virtual public Transport { public: Car() { speed = 200; } }; class Airplane : virtual public Transport { public: Airplane() { speed = 500; } }; class FlyingCar : public Car, public Airplane { public: void Print() { cout << speed << endl; } }; int main() { FlyingCar a; a.Print(); }

1) 200
2) 500
3) Ошибку
4) Ничего не выведет

22. Что покажет следующий код? class Car { protected: double speed; public: Car() { speed = 200; } }; class Airplane { protected: double speed; public: Airplane() { speed = 500; } }; class FlyingCar : public Car, public Airplane { public: void Print() { cout << speed << endl; } }; int main() { FlyingCar a; a.Print(); }

1) Ничего не выведет
2) Ошибку
3) 500
4) 200

23. Что покажет следующий код? template T Sum(T a, T b) { return a + b; } int main() { cout << Sum(3, 9.5) << endl; }

1) 12.5
2) 12
3) 13
4) Ошибку
5) 3 9.5

24. Что покажет следующий код? class INTEGER { int a; public: INTEGER(int a) { this->a = a; } void Print() { cout << a << endl; } }; template T Sum(T a, T b) { return a + b; } int main() { INTEGER a(15); INTEGER b(25); INTEGER c = Sum(a, b); c.Print(); }

1) 40
2) Ничего не выведет
3) Ошибку
4) 15
5) 25

25. Что покажет следующий код? int main() { setlocale(LC_ALL, "rus"); int a[5] = { 1, 2, 3, 4, 5 }; int i = 0; while (true) { try { if (a[i] % 2 == 0) { cout << a[i] << " "; } else { throw a[i]; break; } i++; } catch (const int ex) { cout << "Ошибка "; } } }

1) 2 4
2) 1 2 3 4 5
3) Ошибка 2 Ошибка 4 Ошибка
4) Ошибка
5) Бесконечный вывод слова "Ошибка"