Главная / Программирование /
Программирование на C# для школьников / Тест 8
Программирование на C# для школьников - тест 8
Упражнение 1:
Номер 1
Какие утверждения о функциях от одного аргумента являются истинными?
Ответ:
 (1) Функция y = F(x)
задает отображение элементов из множества определения функции X
в множество значений функции Y
 
 (2) Элементы множества определения функции должны быть целыми числами 
 (3) Каждому элементу x
из множества определения функции ставится в соответствие ровно один элемент y
из области значений 
 (4) Множества X
и Y
не могут совпадать 
Номер 2
Какие утверждения о функциях n
аргументов являются истинными?
Ответ:
 (1) Функция y = F(x1, x2, ..., xn)
задает отображение совокупности из n аргументов <x1, x2, ..., xn> ровно в один элемент y множества значений Y
 
 (2) Функция задает отображение совокупности из n
аргументов <x1, x2, ..., xn> в совокупность элементов <y1, y2, ..., yn> множества значений Y
 
 (3) Все аргументы функции должны принадлежать одному и тому же множеству X
 
 (4) Элементы множества значений должны быть числами – целыми или вещественными 
Номер 3
Какие утверждения о функциях являются истинными?
Ответ:
 (1) Функция y = F(x)
всегда задает отображение из множества целых чисел в множество целых чисел 
 (2) Функция y = F(x)
может задавать отображение из множества целых чисел в множество целых чисел 
 (3) Элементы множества значений функции могут быть булевского типа 
 (4) Элементы множества определения функции могут быть булевского типа 
Упражнение 2:
Номер 1
Множество X состоит из трех элементов {1, 2, 3}
. Какие из отображений элементов X
на X
задают функцию?
Ответ:
 
(1)  
 
(2)  
 
(3)  
 
(4)  
Номер 2
Множество X
состоит из трех элементов {a, b, c}
. Какое из отображений элементов X
на X
задает функцию?
Ответ:
 
(1)  
 
(2)  
 
(3)  
 
(4)  
Номер 3
Заголовок процедуры определяет:
Ответ:
 (1) Тип значения, возвращаемого процедурой 
 (2) Число параметров процедуры 
 (3) Для каждого формального параметра определен его статус – входной, обновляемый или выходной 
 (4) Для каждого формального параметра указывается его тип 
Упражнение 3:
Номер 1
Заголовок функции определяет:
Ответ:
 (1) Число аргументов функции 
 (2) Имя функции 
 (3) Является ли функция взаимно однозначной 
Номер 2
Заголовок функции определяет:
Ответ:
 (1) Тип значения, возвращаемого функцией 
 (2) Значение, возвращаемое функцией 
 (3) Имя функции 
 (4) Имена аргументов функции 
Номер 3
Укажите истинные высказывания:
Ответ:
 (1) Вызов процедуры является выполняемым оператором 
 (2) Вызов процедуры позволяет дать новые значения переменным, представляющих фактические параметры вызова и имеющих статус выходных и обновляемых параметров 
 (3) После вызова процедуры значения переменных, представляющих фактические параметры со статусом входных параметров,не изменяются, даже если им присваивались значения в теле процедуры 
 (4) Процедуры могут вызываться в выражениях 
Упражнение 4:
Номер 1
Укажите корректную синтаксическую формулу объявления процедуры:
Ответ:
 (1) <заголовок процедуры>; <тело процедуры> 
 (2) <заголовок процедуры><тело процедуры><вызов процедуры> 
 (3) <заголовок процедуры><тело процедуры> 
Номер 2
Укажите корректную синтаксическую формулу, задающую объявление функции:
Ответ:
 (1) <заголовок функции>; <тело функции> 
 (2) <заголовок функции><тело функции><вызов функции> 
 (3) <заголовок функции><тело функции> 
Номер 3
Укажите истинные высказывания:
Ответ:
 (1) Если объявление метода начинается с ключевого слова void
, то метод класса является процедурой 
 (2) Если объявление метода начинается с указания типа, отличного от void
, то метод является функцией 
 (3) Метод, объявление которого начинается ключевым словом void
, может быть, как процедурой, так и функцией 
 (4) Оператор return
обязательно должен присутствовать в теле функции 
Упражнение 5:
Номер 1
При объявлении функции указывается список ее формальных параметров, при вызове функции указывается список фактических параметров Что можно сказать о соответствии параметров?
Ответ:
 (1) Число параметров в обоих списках должно совпадать 
 (2) Тип фактического параметра, стоящего на k-м месте должен соответствовать типу формального параметра, стоящего на этом же месте 
 (3) Имена формальных и соответствующих фактических параметров должны совпадать 
Номер 2
Какие объявления функции y = x3 – 3
являются корректными?
Ответ:
 (1) int F(int x); {return x * x * x – 3}
 
 (2) int Cube(int x) {return x * x * x – 3;}
 
 (3) double F(double x) {return MathPower(x, 3) - 3; }
 
Номер 3
Функция F(x) объявлена следующим образом:
int F(int x) {return x * x + 1;}
Укажите корректные преобразования объявления функции F
в объявления процедуры P
:
Ответ:
 (1) void P(int x, int y) { y = x * x + 1;}
 
 (2) void P (int x, out int y); { y = x * x + 1;}
 
 (3) void P(int x, out int y) { y = x * x + 1;}
 
 (4) void P (int a, out int b) { b = a * a + 1;}
 
Упражнение 6:
Номер 1
Какое из объявлений процедуры является синтаксически корректным?
Ответ:
 (1) Proc (int x, out int y) { y = x * x + 1;}
 
 (2) int Proc1(int x, out int y) { y = x * x + 1;}
 
 (3) void P(int x, out int y); { return x * x + 1;}
 
 (4) void P1(int x, out int y) { y = x * x + 1; }
 
Номер 2
Тело функции определяет:
Ответ:
 (1) Число аргументов функции 
 (2) Тип возвращаемого значения 
 (3) Значение, возвращаемое функцией 
Номер 3
Какие высказывания являются истинными?
Ответ:
 (1) Тип аргумента функции и тип возвращаемого значения должны совпадать 
 (2) Аргумент и возвращаемое значение функции должны быть арифметического типа 
 (3) В языке C# возвращаемое функцией значение может быть любого типа, допускаемого языком программирования 
Упражнение 7:
Номер 1
Какие высказывания являются истинными?
Ответ:
 (1) При объявлении процедуры в качестве типа возвращаемого значения указывается ключевое слово void 
 (2) При объявлении процедуры в качестве возвращаемого значения может указываться тип выходного параметра 
 (3) При объявлении функции в качестве возвращаемого значения указывается ключевое слово void 
 (4) Объявление функции начинается с указания типа возвращаемого значения 
Номер 2
Формальный параметр из списка формальных параметров функции определяет:
Ответ:
 (1) Имя аргумента 
 (2) Тип аргумента 
 (3) Значение аргумента 
Номер 3
Функция F(x)
имеет следующее объявление:
int F(int x) { return x * x + 1;}
Каково значение переменной xпосле выполнения следующего фрагмента кода?
int x = 4; x = F(x); x = F(x);
Ответ:
 (1) 4 
 (2) 26 
 (3) 190 
 (4) 290 
Упражнение 8:
Номер 2
Укажите корректные высказывания относительно объявления процедуры:
Ответ:
 (1) Процедура не возвращает значения 
 (2) Процедура имеет выходные и обновляемые формальные параметры 
 (3) Для входных параметров процедуры указывается ключевое слово in 
Номер 3
Укажите истинные высказывания:
Ответ:
 (1) Объявление процедуры является декларативным описанием, задающим определение процедуры, и не приводит непосредственно к вычислениям 
 (2) Процедуру и функцию можно один раз объявить и многократно вызывать 
 (3) Каждому вызову функции должно предшествовать ее объявление 
Упражнение 9:
Номер 1
Отметьте истинные высказывания:
Ответ:
 (1) В теле процедуры каждому параметру, объявленному с ключевым словом out
должно присваиваться значение 
 (2) В теле функции последним выполняемым оператором должен быть оператор return
, возвращающий вычисленное значение функции 
 (3) В теле функции нельзя использовать операторы присваивания, дающие значения входным параметрам функции 
 (4) В теле процедуры нельзя использовать оператор return
 
Номер 2
Укажите истинные высказывания:
Ответ:
 (1) Вызов процедуры является оператором 
 (2) Вызов процедуры может быть частью выражения 
 (3) Вызов функции является оператором 
 (4) Вызов функции может быть частью выражения 
Номер 3
Укажите истинные высказывания:
Ответ:
 (1) Формальный параметр является именем, для которого указан тип параметра 
 (2) Фактический параметр всегда является именем переменной, имеющей фактическое значение 
 (3) Фактический параметр, имеющий статус входного параметра, может быть выражением сколь угодно сложного вида 
Упражнение 10:
Номер 1
Процедура P
объявлена следующим образом:
void P(int u, int v, out int x, out int y)
{x = u + v; y = u – v; u =x + y; v = x – y; x = u + v; y = u –v;}
Каковы значения переменных u
, v
, x
и y
после вызова процедуры:
int u = 5, v = 3, x = 5, y = 3; P(u, v, out x, out y);
Ответ:
 (1) 5, 3, 8, 2 
 (2) 10, 6, 16, 4 
 (3) 5, 3, 16, 4 
 (4) 16, 4, 16, 4 
Номер 2
Процедура P
задана следующим описанием:
void P(ref int x, out int y) { x++; y = x * x + 1;}
Укажите значения переменных xи yпосле вызова этой процедуры:
int x = 4, y = 5; P(ref x, out y);
Ответ:
 (1) 4, 17 
 (2) 5, 31 
 (3) 4, 26 
 (4) 5, 26 
Номер 3
Процедура F
объявлена следующим образом:
void F(ref int x) { x =x * x + 1;}
Каково значение переменной xпосле выполнения следующего фрагмента кода:
int x = 4; F(ref x); F(ref x);
Ответ:
 (1) 4 
 (2) 26 
 (3) 290 
 (4) 190