ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В C++ (4-Е ИЗДАНИЕ) (часть 5) онлайн

Вопросы

Ответы на нижеприведенные вопросы можно найти в приложении Ж.

1. Наиболее важным из назначений функции является:

а)            именование блока операторов;

б)           уменьшение размера программы;

в)            обработка аргументов и возвращение значения;

г)            структуризация программы.

2. Код функции задается в____             функции.

3. Напишите функцию foo(), выводящую на экран слово foo.

4. Оператор, описывающий функцию, называется ее____   или___               .

5. Операторы, выполняющие назначение функции, составляют___              функ- ции.

6. Оператор, инициирующий выполнение функции, называется___             функ- ции.

7. Первая строка в объявлении функции называется                .

8. Аргумент функции — это:

а)            переменная функции, получающая значение из вызывающей программы;

б)           способ, с помощью которого функция защищает себя от воздействия значений, передаваемых вызывающей программой;

в)            значение, передаваемое вызывающей программой в функцию;

г)            значение, возвращаемое функцией вызывающей программе.

9. Истинно ли следующее утверждение: когда аргументы передаются по зна- чению, функция имеет доступ к переменным вызывающей программы?

10. Для чего предназначена возможность указывать в прототипе функции име- на аргументов?

11. Какие из перечисленных ниже элементов программы можно передавать в функцию:

а)            константы;

б)           переменные;

в)            структуры;

г)            заголовочные файлы.

12. Что означают пустые скобки после имени функции?

13. Сколько значений может возвращать функция?

14. Истинно ли следующее утверждение: когда функция возвращает значе- ние, ее вызов можно ставить справа от знака операции присваивания?

15. Где указывается тип значения, возвращаемый функцией?

16. Функция, не возвращающая значения, имеет тип возвращаемого значения_____.

17. Дана следующая функция:

int times2(int а)                 {

                return (а*2);

                }

Напишите функцию main(), которая будет содержать все необходимое для вызова данной функции.

18. Когда аргумент передается в функцию по ссылке,

а)            внутри функции создается переменная, хранящая значение этого аргу- мента;

б)           функция не имеет доступа к значению аргумента;

в)            в вызывающей программе создается временная переменная для хране- ния значения аргумента;

г)            функция получает доступ к аргументу в вызывающей программе.

19. Какова причина использования ссылочного механизма передачи аргумен- тов в функцию?

20. Перегруженные функции:

а)            являются группой функций, имеющих одно и то же имя;

б)           имеют одинаковое количество аргументов и их типы;

в)            облегчают процесс программирования;

г)            могут не выдержать нагрузки.

21. Напишите прототипы двух перегруженных функций с именем bar(). Обе функции имеют возвращаемое значение типа int. Первая функция имеет единственный аргумент типа char, а вторая — два аргумента типа char. Ес- ли это невозможно, объясните причину.

22. Как правило, встроенные функции исполняются___, чем обычные,

но занимают____         места в памяти.

23. Напишите прототип встроенной функции с именем foobar(), имеющей один аргумент типа float и возвращающей значение типа float.

24. Значение аргумента по умолчанию:

а)            может использоваться вызывающейся программой;

б)           может использоваться функцией;

в)            должно быть константой;

г)            должно быть значением переменной.

25. Напишите прототип функции с именем blyth(), возвращающей значение типа char и принимающей два аргумента. Первый из аргументов имеет тип int, а второй — тип float и значение по умолчанию, равное 3.14159.

26. Область видимости и класс памяти связаны с____             и_____               пере- менной.

27. Какие функции могут иметь доступ к глобальной переменной, располо- женной в одном файле с ними?

28. Какие функции имеют доступ к локальной переменной?

29. Статическая локальная переменная используется для:

а)            расширения области видимости переменной;

б)           ограничения области видимости переменной до одной функции;

в)            сохранения переменной в памяти после выполнения функции;

г)            сохранения значения переменной после завершения функции.

30. В каком необычном месте программы можно использовать вызов функ- ции, если эта функция возвращает значение по ссылке?

 

38