C#: основы - ответы на тесты Интуит

Правильные ответы выделены зелёным цветом.
Все ответы: Определение уровня специалистов по основам языка программирования C#.
Укажите все истинные высказывания из приведенного перечня. В консольном приложении метод Main
(1) должен завершаться оператором return
(2) должен быть статическим методом
(3) может принимать аргументы
(4) должен возвращать код возврата
(5) должен находиться внутри статического класса
Общеязыковая исполняющая среда CLR - это
(1) компилятор языка C#
(2) центральная часть .NET Framework
(3) система, осуществляющая компоновку программ на разных языках
(4) система, осуществляющая компиляцию и выполнение управляемого кода
(5) система, которая предоставляет средства для визуального проектирования программ
Для вывода на консоль сообщения "Первая программа" разработана программа, код которой полностью приведен ниже: class Test { public void Main() { System.Console.Write("Первая программа"); } } Трансляция программы завершена неудачно. Из приведенных высказываний укажите высказывание, которое раскрывает причину некорректности программы:
(1) для вызова метода Write должен быть создан объект класса Console
(2) не указана директива using System для фиксации используемого пространства имен
(3) процедура Main обязана возвращать значение в виде целого числа
(4) процедура Main должна быть определена как статический метод
(5) в процедуре Main не указаны параметры
Программа предназначена для вывода на консоль значения Y=Sn: class Program { static void Main() { double S = 13, n = 7, Y; Y = ____; System.Console.Write(Y); }} Среди приведенных ниже кодов укажите код, которым необходимо заменить знаки подчеркивания для получения корректной программы, решающей поставленную задачу:
(1) Math.Pow(s, n)
(2) S^n
(3) S**n
(4) System.Math.Exp(S, n)
(5) System.Math.Pow(S, n)
Укажите все ключевые слова из приведенного перечня, которые определяют целочисленные типы данных:
(1) sbyte
(2) ulong
(3) void
(4) decimal
(5) float
Для хранения значения типа decimal в C# необходима память, объем которой
(1) определяется длиной машинного слова процессора
(2) 16 байт
(3) 4 байта или 8 байт в зависимости от значения
(4) спецификацией языка не определен и зависит от конкретной реализации транслятора
(5) 8 байт
В теле метода Main() содержится следующий небезопасный код: class Program { unsafe static void Main() { int* A, B; int C=10, D=10; A = &C; B = &D; System.Console.Write(A == B); } } Выполнение небезопасного кода разрешено. Укажите результат вывода на консоль после выполнения метода Main():
(1) True
(2) False
(3) 1
(4) A == B
(5) 0
В теле метода Main() содержится следующий код: long a = new long(); ushort b = new ushort(); System.Console.Write(a == b); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) программа не корректна, так как переменные a и b имеют разные типы
(2) программа не корректна, так как переменные a и b имеют неопределенное значение
(3) False
(4) True
(5) a == b
Требуется вывести на консоль максимально возможное значение типа ushort. Для решения этой задачи разработана программа: class Program { static void Main() { ushort a = 255; System.Console.WriteLine( ___ ); }} Среди приведенных ниже кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания позволяет получить корректную программу, решающую поставленную задачу:
(1) a.MaxValue
(2) ushort.MaxValue
(3) 65535
(4) a.ToString()
(5) a.MaxValue()
Отметьте среди перечисленных все случаи, в которых осуществляется неявное (автоматическое) преобразование типа
(1) double d = 5.6;
(2) double d = 128;
(3) float f = 5.6;
(4) long l = 250;
(5) long l = 250L
Укажите среди перечисленных все варианты оператора присваивания, в которых преобразование типа источника (правая часть оператора присваивания) к типу приемника (левая часть оператора присваивания), может быть только явным:
(1) uint <---- byte
(2) byte <---- char
(3) decimal <---- float
(4) decimal <---- long
(5) decimal <---- double
В теле метода Main() содержится следующий код: object box = 125; short original; original = _____; Среди указанных ниже кодов укажите код, подстановка которого вместо знаков подчеркивания позволяет присвоить переменной original значение 125:
(1) (short)box
(2) (int)box
(3) box
(4) (short)(char)box
(5) (long)box
В теле метода Main() содержится код, предназначенный для вычисления площади S круга, радиус R которого равен 12. ____ R=12; double S = System.Math.PI*R*R; Среди перечисленных ниже типов укажите все типы, подстановка каждого из которых вместо знаков подчеркивания позволяет получить программу, решающую поставленную задачу:
(1) char
(2) int
(3) double
(4) sbyte
(5) decimal
Память в стеке, выделенная для хранения локальной переменной, освобождается:
(1) в процессе упаковки переменной в объектный образ
(2) только после завершения программы
(3) на этапе исполнения программы при выходе из блока, в котором эта переменная объявлена
(4) на этапе исполнения программы при входе во вложенный блок
(5) в процессе распаковки переменной из объектного образа
Укажите все варианты, относящиеся к недопустимому назначению начального значения (инициализации) локальной переменной х:
(1) int x = 56;
(2) int x = new int(56);
(3) int x = new int();
(4) int y, x=y;
(5) int y=0, x=y;
В теле метода Main() содержится следующий программный код: short a = 10, b = 4; double c; c = (double)((a % 4) / (b % 10)); System.Console.Write(c); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 0
(2) 0,5
(3) трансляция программы завершается неудачно
(4) 0,9
В теле метода Main() содержится следующий программный код: int a, b=4; a = 5%3 + 5 * ++b; System.Console.Write(a); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 27
(2) 35
(3) метод Main() не может быть выполнен: трансляция программы завершается неудачно
(4) 34
В теле метода Main() содержится приведенный ниже программный код: byte a = 0x8, b, maska =_____; b = (byte)(a & maska); System.Console.WriteLine(b); Среди приведенных ниже инициализаторов укажите один инициализатор, подстановка которого вместо знаков подчеркивания позволит получить программу, которая выведет на экран десятичное значение 8:
(1) 0x0
(2) 0x1
(3) 0xF
(4) 0x7
В теле метода Main() содержится следующий программный код: int a = 2, b; b = (byte)a==2?(a << 2 + 1 ):0; System.Console.WriteLine(b); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 0
(2) трансляция программы завершается неудачно
(3) 16
(4) 9
Из приведенных ниже фрагментов кода укажите все фрагменты, соответствующие объявлению ссылки на массив массивов:
(1) byte[,] a;
(2) float[][] a;
(3) string[] a;
(4) char** a;
(5) int *a[];
В теле метода Main() содержится следующий программный код: int[] a, b, c; a = new int[] { 44, 55 }; b = new int[] { 44, 55 }; c = new int[] { 88, 89 }; c = a; System.Console.Write((a == b) + ":" + (a == c)); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) метод Main() не может быть выполнен: трансляция программы завершается неудачно
(2) True:False
(3) False:False
(4) True
(5) False:True
Следующий фрагмент метода Main() содержит одну или несколько ошибок синтаксиса: int[,] A = new int[,] { {55, 77}, {34, 85} }; int[,] B = new int[,] { { 11, 22 } }; int[] C = new int[3]; C = A; System.Console.Write(C); Из приведенных высказываний укажите высказывание, которое раскрывает причины некорректности фрагмента:
(1) в объявлении массива В не задана инициализация других строк
(2) в объявлении массивов А и В должна быть задана размерность
(3) массив С содержит меньше элементов, чем массив А, поэтому операция присваивания недопустима
(4) ссылка на массив А не может быть преобразована в ссылку на массив С
(5) метод System.Console.Write не допускает использование в качестве аргумента имени массива
Программа предназначена для заполнения матрицы и вывода в консоль двух элементов матрицы: class Program { static void Main() { int[,] a; a = new int[,] { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 }}; System.Console.Write("{0} {1} ", ______); } } Среди приведенных кодов укажите код, подстановка которого вместо знаков подчеркивания приведет к корректной программе, выводящей на консоль значения: 2 8
(1) a[2,1], a[2,3]
(2) a[0,1], a[2,1]
(3) a[1,0], a[1,2]
(4) a[1,2], a[3,2]
В теле метода Main() содержится следующий код: int s = 0; int[,] a; a = new int[,] { { 0, 1, 2, 3 }, { 4, 5, 6, 7 }, { 8, 9, 10, 11 } }; s += a[0, 0]; s += a[2, 1] + a[2, 2]; System.Console.Write("{0} {1} {2} {3}", s, a.GetLength(0), a.GetLength(1), a.Rank); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
(2) 16 4 3 1
(3) 16 4 3 0
(4) 19 3 4 2
Проанализируйте программу и определите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение: using System; class Program { static void Main() { int[][] a; int[] b; a = new int[2][]; b = a[0] = new int[] { 1, 2 }; a[1] = new int[] { 3, 4 }; a[0] = a[1]; a[1]= b; Console.Write("{0} {1} ", a[0][0], a[0][1]); Console.Write("{0} {1} ", a[1][0], a[1][1]); } }
(1) программа выдает синтаксическую ошибку, так как ссылки a и b являются ссылками разных типов
(2) 4 3 2 1
(3) 3 4 1 2
(4) 3 2 1 4
Из приведенного перечня укажите все истинные утверждения, относящиеся к строкам:
(1) строка – это ссылочный тип данных
(2) строка – это значимый тип данных
(3) строка – это массив символов типа char
(4) строка – это последовательность символов, заканчивающаяся нулем
(5) строка – это объект класса System.String
Проанализируйте программу и определите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение: class Program { static void Main() { int a=12, b=34; string s = "Сумма="; s += a + b; System.Console.Write(s); } }
(1) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
(2) сумма=1234
(3) сумма=46
(4) сумма=12+34
(5) 1234
В теле метода Main() содержится следующий код: string s = "?234", s2 = "56"; s = '1' + s[1] + s[2] + s[3]; s = s + s2; System.Console.Write(s); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение, если код символа 1 равен 49:
(1) 112356
(2) 21
(3) 69
(4) 123456
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
В теле метода Main() содержится следующий код: string str = "whfirk"; char[] chars = str.ToCharArray(); chars[1] = 'o'; str = new string(chars); System.Console.Write(str); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) whfirk
(2) ohfirk
(3) wofirk
(4) owhfirk
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
Программа Program.exe, исходный код которой указан ниже, запускается на выполнение командой Program.exe банан class Program { static void Main(string[] str) { string s = "ан"; int i = 0; i = str[0].IndexOf("ан", 0); System.Console.Write(i + " "); i = str[0].IndexOf(s, i + s.Length); System.Console.Write(i + " "); i = str[0].IndexOf(s, i + s.Length); System.Console.Write(i); } } Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 1 3 1
(2) 2 4 2
(3) 0 0 0
(4) 1 3 -1
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
Из приведенного перечня укажите все утверждения, соответствующие семантике оператора foreach:

Оператор foreach используется

(1) для перебора значений любой стандартной коллекции
(2) для перебора значений одномерного массива
(3) для перебора значений, возвращаемых индексатором объекта
(4) для перебора значений любого контейнера
(5) для перебора значений многомерного массива
Приведенный фрагмент исходного кода размещен в теле метода Main: int[] Массив = { 4, 5, 6, 8, 7 }; for (int s=0, i=0; i < Массив.Length;) { if (i % 3 == 0) continue; if (Массив [i] % 3 == 0) break; s += Массив[i++]; } System.Console.WriteLine(s); Трансляция программы завершена неудачно. Из приведенных высказываний укажите высказывание, которое раскрывает причину некорректности программы:
(1) при объявлении массива пропущены ключевые слова new int[]
(2) имя локальной переменной Массив содержит символы русского алфавита
(3) в программе используется локальная переменная s с неопределенным значением
(4) в заголовке цикла пропущен элемент "итерация"
(5) не объявлена переменная i
В теле метода Main() содержится следующий код: double a=5; string msg = "не определено"; if (a > 1) if (a < 4) msg = "внутри"; else; else msg = "снаружи"; System.Console.WriteLine(msg); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) внутри
(2) снаружи
(3) не определено
(4) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
В теле метода Main() содержится следующий код: uint НОД, a=9, b=6; for (НОД = (a < b) ? a : b; ; НОД--) if ((a % НОД == 0) && (b % НОД == 0)) break; System.Console.WriteLine(НОД); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 3
(2) 9
(3) 6
(4) 2
(5) программа не выполняется, так как обнаружена синтаксическая ошибка, связанная с тем, что пропущено условие в операторе for
Проанализируйте приведенный код, определенный в методе Main(): int i, смена=3; string d; if ((i = int.Parse(System.Console.ReadLine())) < 6) смена = int.Parse(System.Console.ReadLine()); switch (i) { case 6: case 7: d = "Выходной"; goto case 8; default: d = "Работаю"; switch (смена) { case 1: System.Console.WriteLine(d + " в первую смену"); break; case 2: System.Console.WriteLine(d + " во вторую смену"); break; default: System.Console.WriteLine("Не работаю"); break; } break; case 8: System.Console.WriteLine("Отдыхаю"); return; } Укажите результат вывода, если после успешного запуска программы на компиляцию и выполнение пользователь ввел с клавиатуры 1, а затем 2.
(1) не работаю
(2) работаю в первую смену
(3) работаю во вторую смену
(4) отдыхаю
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
Процедура, определяемая как метод класса,
(1) должна содержать в заголовке модификатор static
(2) должна содержать тело метода
(3) должна иметь описание прототипа
(4) должна иметь в заголовке как минимум один параметр
(5) может иметь в заголовке параметры с модификатором ref
Укажите из перечисленного все истинные высказывания:
(1) с помощью ключевого слова ref можно передать аргумент по ссылке
(2) аргумент с модификатором out должен быть инициализирован перед вызовом метода
(3) если параметр метода имеет модификатор ref или out, то и соответствующий ему аргумент должен иметь такой же модификатор
(4) если параметр метода имеет модификатор ref, то соответствующий ему аргумент может иметь модификатор out, как частный случай
(5) параметр-массив может располагаться в любом месте списка параметров метода
Приведенные ниже процедуры и функции определены как методы одного класса. static void Main() { string a = "строка"; P(F(a)); P(a); } static string F(string a) { string b=""; for (int i = 0; i < a.Length; i++) b = b + a[i]; b.Replace('о', 'а'); b.Replace('к', 'н'); return b; } static void P(string a) { System.Console.Write("{0} ", a); } Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) строка страна
(2) строка строка
(3) страна страна
(4) при выполнение программы фиксируется исключение: нарушение границ массива
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
Приведенные ниже процедуры и функции определены как методы одного класса. public static void Main() { string nameOld = "Петр Ильич Чайковский", nameNew; Console.WriteLine("После попытки удалить отчество: {0}", RemoveName2(nameOld, out nameNew) ? nameNew : nameOld); } static bool RemoveName2(string s1, out string s2) { ________________ int found1 = s1.IndexOf(" "); int found2 = s1.IndexOf(" ", found1 + 1); if (found1 > 0 && found2 >0) { s2 = s1.Remove(found1 + 1, found2 - found1); return true; } return false; } Среди приведенных кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания приведет к корректной программе, выводящей на консоль строку Петр Чайковский
(1) string s2=null;
(2) s2 = " ";
(3) s2 = "";
(4) string s2;
(5) s2 = s1;
Приведенные ниже процедуры и функции определены как методы одного класса. static double Func (int a, int b) { return a * b; } static double Func (double a, double b) { return a - b; } static double Func (short a, float b) { return a + b; } static double Func (short a, int b) { return b % a; } static void Main() { int a = 2; System.Console.Write(F(a, 3.5)); } Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 7
(2) -1,5
(3) 5,5
(4) 2
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
В консольном приложении метод, являющийся точкой входа,
(1) может получать аргументы командной строки
(2) должен быть единственным методом в своем классе
(3) должен определять тип возвращаемого значения void
(4) должен выводить информацию в консоль
(5) в качестве источника ввода данных может использовать только клавиатуру
Среда Visual Studio .NET - это
(1) неотъемлемая компонента .NET Framework
(2) одна из подсистем среды исполнения CLR
(3) компилятор языка C#
(4) интегрированная среда разработки программ для платформы .NET Framework
(5) вспомогательная система для разработки программ для платформы .NET Framework
Для вывода на консоль сообщения "Первая программа" разработана программа, код которой полностью приведен ниже: class Test { static int main() { System.Console.Write("Первая программа"); return 0;} } Трансляция программы завершена неудачно. Из приведенных высказываний укажите высказывание, которое раскрывает причину некорректности программы:
(1) в процедуре main не указаны параметры
(2) не указана директива using System для фиксации используемого пространства имен
(3) процедура main обязана возвращать значение в виде целого числа, отличного от 0
(4) точка входа в программу не может иметь имя main
(5) для вызова метода Write должен быть создан объект класса Console
Программа предназначена для вывода на консоль значения случайного вещественного числа в интервале [0,100): using System; class Program { static void Main() { Random rnd = new Random(); Console.Write( ___ ); } } Среди приведенных ниже кодов укажите код, которым необходимо заменить знаки подчеркивания для получения корректной программы, решающей поставленную задачу:
(1) rnd.NextDouble(0,99)
(2) Random.NextDouble()*99.0
(3) rnd.NextDouble()*100.0
(4) NextDouble(100)
(5) rnd.NextDouble(0,100)
Укажите все ключевые слова из приведенного перечня, которые определяют вещественные типы данных:
(1) decimal
(2) sbyte
(3) ushort
(4) bool
(5) float
Для хранения значения типа ushort в C# необходима память, объем которой
(1) 2 байта
(2) 4 байта
(3) 8 байт
(4) спецификацией языка не определен и зависит от конкретной реализации транслятора
(5) определяется длиной машинного слова процессора
В теле метода Main() содержится следующий код: Random d1, d2; d1 = new Random(1); d2 = new Random(1); System.Console.Write(d1 != d2); Укажите результат вывода на консоль после выполнения метода Main():
(1) False
(2) True
(3) 1
(4) System.Random
(5) d1 != d2
В теле метода Main() содержится следующий код: char a = new char(); int b = new int(); System.Console.Write(a == b); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) программа не корректна, так как переменные a и b имеют несовместимые типы
(2) программа не корректна, так как переменные a и b имеют неопределенное значение
(3) True
(4) False
(5) a == b
Требуется вывести на консоль минимально возможное значение типа sbyte. Для решения этой задачи разработана программа: using System; class Program { static void Main() { sbyte a = 0; Console.WriteLine( ___ ); } } Среди приведенных ниже кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания позволяет получить корректную программу, решающую поставленную задачу:
(1) sbyte.MinValue
(2) a.MinValue
(3) a.ToString()
(4) -128
(5) a.MinValue()
Отметьте среди перечисленных одно условие, при выполнении которого осуществляется неявное (автоматическое) преобразование типа переменной при ее присвоении переменной другого типа:
(1) обе переменные содержат целочисленные данные
(2) обе переменные содержат вещественные данные
(3) тип приемника больше, чем тип источника
(4) тип приемника совместим с типом источника
(5) тип приемника больше, чем тип источника, и эти два типа совместимы
Укажите среди перечисленных все операторы присваивания, для которых будет выдано сообщение об ошибке преобразования типа:
(1) uint b=10; b=b+b;
(2) int a=10; a=a*a;
(3) float f=10.0f; f=f+f;
(4) short s=10; s=s*s;
(5) ushort u=10; u=u*u;
В теле метода Main() содержится следующий код: object box = 'A'; short original; original = _________; Среди указанных ниже кодов укажите код, подстановка которого вместо знаков подчеркивания позволяет присвоить переменной original значение 65:
(1) (short)box
(2) (char)box
(3) box
(4) (object)box
(5) (short)(char)box
В теле метода Main() содержится код, предназначенный для вычисления площади S круга, радиус R которого равен 12. _______ R = 12; float S = (float)System.Math.PI * (float)(R * R); Среди перечисленных ниже типов укажите все типы, подстановка кажого из которых вместо знаков подчеркивания позволяет получить программу, решающую поставленную задачу:
(1) decimal
(2) long
(3) float
(4) sbyte
(5) char
Укажите истинные высказывания из приведенного перечня:
(1) локальная переменная, объявляемая в блоке, должна иметь имя, не совпадающее с другими именами локальных переменных этого блока
(2) локальная переменная, объявляемая в блоке, может иметь любое имя, не совпадающее с именами полей класса и с другими именами локальных переменных этого блока
(3) локальная переменная, объявляемая в блоке, должна иметь имя, не совпадающее с формальными параметрами метода
(4) локальная переменная, объявляемая в блоке, должна иметь уникальное имя в программе
Укажите варианты, относящийся к допустимому назначению начального значения (инициализации) локальным переменным:
(1) float x = 56.5;
(2) char x = 'A';
(3) char x = 65;
(4) byte x = new byte(0);
(5) byte y=287;
В теле метода Main() содержится следующий программный код: int a = 5, b = 10, c; c = a+b * a-b / a; System.Console.Write(c); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 0
(2) 13
(3) трансляция программы завершается неудачно
(4) 53
В теле метода Main() содержится следующий программный код: int a ,b=4; a = 5%3 + 5 * b++; System.Console.Write(a); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 27
(2) 22
(3) трансляция программы завершается неудачно
(4) 28
В теле метода Main() содержится приведенный ниже программный код: byte a = 0x8, b, maska =____; b = (byte)(a++ | maska); System.Console.WriteLine(b); Среди приведенных ниже инициализаторов укажите один инициализатор, подстановка которого вместо знаков подчеркивания позволит получить программу, которая выведет на экран десятичное значение 24:
(1) 0x10
(2) 0x7
(3) (byte)~a
(4) 0xF
В теле метода Main() содержится следующий программный код: int a=2, b; b = (sbyte)(a >> 1); System.Console.WriteLine(b==1?1:0); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 0
(2) 3
(3) 1
(4) 2
Из приведенных ниже фрагментов кода укажите все фрагменты, соответствующие объявлению ссылки на одномерный массив, элементами которого являются символы:
(1) char[] a;
(2) char[][] a;
(3) string[] a;
(4) char** a;
(5) char *a;
В теле метода Main() содержится следующий программный код: int[] a, b, c; a = new int[] { 44, 55 }; b = new int[] { 44, 55 }; c = a; c = new int[] { 88, 89 }; System.Console.Write((a == b) + ":" + (a == c)); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) трансляция программы завершается неудачно
(2) False:False
(3) True:False
(4) False
(5) False:True
Следующий фрагмент метода Main() содержит одну или несколько ошибок синтаксиса: int[,] A = { {55, 77, 66}, {34, 85, 66} }; int[,] B = new int[2,3] { { 11, 22 }, { 33, 44 } }; int[] C = new int[7]; C = (int[])A; System.Console.Write(C); Из приведенных высказываний укажите все высказывания, которые раскрывают причины некорректности фрагмента:
(1) в объявлении массива В не задана инициализация третьей строки
(2) в объявлении массива А пропущены ключевые слова: new int[,]
(3) после выполнения выражения C=(int[])A; у массива С последний элемент не получит значения, поэтому операция присваивания недопустима
(4) ссылка на массив А не может быть преобразована в ссылку на массив С
(5) метод System.Console.Write не допускает использование в качестве аргумента имени массива
Программа предназначена для заполнения матрицы и вывода в консоль двух элементов матрицы: class Program { static void Main() { int[,] a; a = new int[,] { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } }; System.Console.Write("{0} {1} ", _______); } } Среди приведенных кодов укажите код, подстановка которого вместо знаков подчеркивания приведет к корректной программе, выводящей на консоль значения: 3 7
(1) a[1,3], a[3,1]
(2) a[2,0], a[0,2]
(3) a[0, 2], a[2, 0]
(4) a[3,1], a[1,3]
В теле метода Main() содержится следующий код: int s = 1; int[,] a; a = new int[,] { { 0, 1, 2, 3 }, { 4, 5, 6, 7 }, { 8, 9, 10, 11 } }; s += a[1, 1] + a[2, 1]; s += a[1, 2]; System.Console.Write("{0} {1} {2} {3}", s, a.GetLength(0), a.GetLength(1), a.Rank); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
(2) 16 4 3 1
(3) 16 4 3 0
(4) 21 3 4 2
Проанализируйте программу и определите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение: using System; class Program { static void Main() { int t; int[][] a; int[] b = { 1, 2 }; a = new int[2][]; a[1] = new int[] { 3, 4 }; t = a[1][0]; a[1][0] = b[1]; b[1] = t; t = a[1][1]; a[1][1] = b[0]; b[0] = t; a[0] = b; Console.Write("{0} {1} ", a[0][0], a[0][1]); Console.Write("{0} {1} ", a[1][0], a[1][1]); } }
(1) программа выдает синтаксическую ошибку, так как ссылки a и b являются ссылками разных типов
(2) 4 3 2 1
(3) 2 1 4 3
(4) 3 2 1 4
Из приведенного перечня укажите все истинные утверждения, относящиеся к строкам:
(1) каждый символ строки доступен на чтение и запись
(2) строка не может быть изменена
(3) строка может быть изменена: можно заменять, вставлять и удалять символы строки без создания нового экземпляра
(4) для того чтобы модифицировать строку, нужно создать новую строку как новый экземпляр
Проанализируйте программу и определите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение. Код символа 0 равен 48. using System; class Program { static void Main() { int a=12, b=34; string s = "Сумма="; s +="0"+ a + b; Console.Write(s); } }
(1) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
(2) сумма=01234
(3) сумма=46
(4) сумма=0+12+34
(5) 01234
В теле метода Main() содержится следующий код: string word = new string("1234"); string s = "5" + word[3] + word[2] + word[1]; System.Console.Write(s); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 5321
(2) 54532
(3) 14
(4) 11
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
В теле метода Main() содержится следующий код: string str = "whfirk"; str = str.Remove(1, 2); str = str.Insert(1,"o"); System.Console.Write(str); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) whoirk
(2) wofirk
(3) woirk
(4) hofirk
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
В теле метода Main() содержится следующий код: string str = "Москва - город герой!"; string[] s; s = str.Split(' ', '-'); Console.WriteLine(s[0]+"*"+s[1]+"*"+s[2]+"*"+s[3]); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) Москва***город
(2) Москва**город*герой!
(3) Москва*город*герой*!
(4) Москва**город*герой
(5) программа выдает сообщение об аварийном завершении, по причине выхода за границы массива
Из приведенного перечня укажите все утверждения, соответствующие семантике оператора goto.

Оператор goto можно использовать:

(1) для перехода к другой ветви оператора switch
(2) для выхода из цикла
(3) для входа в тело цикла
(4) для выхода из блока finaly
(5) для выхода из класса
Приведенный фрагмент исходного кода размещен в теле метода Main: int[] Массив = { 4, 5, 6, 8, 7 }; int i; for (int s=0, i=0; i < Массив.Length; i++) { if (i % 3 == 0) continue; if (Массив [i] % 3 == 0) break; s += Массив[i]; System.Console.WriteLine(s); } Трансляция программы завершена неудачно. Из приведенных высказываний укажите высказывание, которое раскрывает причину некорректности программы:
(1) при объявлении массива пропущены ключевые слова new int[]
(2) имя локальной переменной Массив содержит символы русского алфавита
(3) в программе используется локальная переменная s с неопределенным значением
(4) в заголовках условных операторов операция == некорректна, вместо нее необходимо использовать операцию =
(5) переменная i объявлена дважды
В теле метода Main() содержится следующий код: double a=5; string msg="не определено"; if (a > 1) if (a < 4); msg = "внутри"; else msg = "снаружи"; System.Console.WriteLine(msg); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) внутри
(2) снаружи
(3) не определено
(4) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
В теле метода Main() содержится код, написанный для определения наибольшего общего делителя: uint НОД, a=9, b=6; for (НОД = (a < b) ? a : b; ; НОД--); if ((a % НОД == 0) && (b % НОД == 0)) break; System.Console.WriteLine(НОД); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 3
(2) 9
(3) 6
(4) 2
(5) программа не выполняется, так как обнаружена синтаксическая ошибка, связанная с тем, что break не может использоваться в данном месте
Проанализируйте приведенный код, определенный в методе Main(): int i, смена=3; string d; if ((i = int.Parse(System.Console.ReadLine())) < 6) смена = int.Parse(System.Console.ReadLine()); switch (i) { case 6: case 7: d = "Выходной"; goto case 8; default: d = "Работаю"; switch (смена) { case 1: System.Console.WriteLine(d + " в первую смену"); break; case 2: System.Console.WriteLine(d + " во вторую смену"); break; default: System.Console.WriteLine("Не работаю"); break; } break; case 8: System.Console.WriteLine("Отдыхаю"); return; } Укажите все варианты ввода с клавиатуры в случае успешного запуска программы на выполнение, чтобы в консоль было выведено Отдыхаю
(1) 3 и 1
(2) 7
(3) 4 и 2
(4) 6
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
Процедура, определяемая как метод класса,
(1) должна содержать в заголовке модификатор public
(2) может содержать в заголовке ключевое слово int в качестве типа возвращаемого значения
(3) может содержать пустое тело метода
(4) может иметь заголовок без параметров
(5) может иметь в заголовке параметры как с модификатором ref, так и с модификатором out
Укажите из перечисленного все истинные высказывания:
(1) значения аргументов размещаются в динамической памяти (в хипе)
(2) в операторе вызова метода типы аргументов должны либо совпадать с типами параметров метода, либо допускать автоматическое приведение к типам параметров метода
(3) параметр принимает значение соответствующего ему по порядку следования аргумента
(4) аргумент может быть передан в метод или по значению, или по ссылке
(5) вызов функции может не входить в выражение, а представлять собой самостоятельный оператор
Приведенные ниже процедуры и функции определены как методы одного класса. Укажите результат вывода на консоль после выполнения программы. static void Main() { string a = new string(new char[] {'с', 'т', 'р', 'о', 'к', 'а'}); P(F(a)); P(a); } static string F(string a) { string b=""; for (int i = 0; i 7< a.Length; i++) b = b + a[i]; a = b.Replace('о', 'а'); a = b.Replace('к', 'н'); return b; } static void P(string a) { System.Console.Write("{0} ", a); } Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) строка страна
(2) страна страна
(3) строка строка
(4) при выполнение программы фиксируется исключение: нарушение границ массива
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
Приведенные ниже процедуры и функции определены как методы одного класса. public static void Main() { _______________ string nameOld = "Петр Ильич Чайковский"; Console.WriteLine("После попытки удалить отчество: {0}", RemoveName2(nameOld, out nameNew) ? nameNew : nameOld); } static bool RemoveName2(string s1, out string s2) { int found1 = s1.IndexOf(" "); int found2 = s1.IndexOf(" ", found1 + 1); if (found1 > 0 && found2 >0) { s2 = s1.Remove(found1 + 1, found2 - found1); return true; } s2 = ""; return false; } Среди приведенных кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания приведет к корректной программе, выводящей на консоль строку Петр Чайковский
(1) string nameNew=null;
(2) string nameNew = "";
(3) string nameNew;
(4) string nameNew= nameOld;
Приведенные ниже процедуры и функции определены как методы одного класса. static double Func(int a, int b) { return a * b; } static double Func(double a, double b) { return a - b; } static double Func(long a, float b) { return a + b; } static double Func(short a, int b) { return b % a; } static void Main() { int a = 2; System.Console.Write(Func(a, 3.5f)); } Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 7
(2) -1,5
(3) 5,5
(4) 2
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
Консольное приложение компилируется в
(1) программу на байт-коде
(2) машинные команды
(3) язык ассемблера фирмы Microsoft
(4) программу на промежуточном языке MSIL
Платформа .NET Framework обеспечивает:
(1) независимость от платформы
(2) повышенную безопасность
(3) управление базами данных
(4) управление версиями
(5) управление ресурсами вычислительной системы
Для вывода на консоль сообщения "Первая программа" разработана программа, код которой полностью приведен ниже: class Test { static int Main() { System.Console.Write("Первая программа"); } } Трансляция программы завершена неудачно. Из приведенных высказываний укажите высказывание, которое раскрывает причину некорректности программы
(1) в функции Main не указаны параметры
(2) не указана директива using System для фиксации используемого пространства имен
(3) функция Main для завершения программы обязана использовать оператор return
(4) функция Main должна быть определена вне класса, так как она является точкой входа
(5) для вызова метода Write должен быть создан объект класса Console
Программа предназначена для вывода на консоль значения случайного целого числа в интервале [50,100): using System; class Program { static void Main() { Random rnd = new Random(); Console.Write( ___ ); } } Среди приведенных ниже кодов укажите код, которым необходимо заменить знаки подчеркивания для получения корректной программы, решающей поставленную задачу:
(1) rnd.Next(50,100)
(2) rnd.Next() + 50
(3) Random.Next(50, 100)
(4) NextDouble()*50+50
(5) rnd.Next(50,99)
Укажите все ключевые слова из приведенного перечня, которые не определяют вещественные и целочисленные типы данных:
(1) void
(2) sbyte
(3) string
(4) bool
(5) float
Для хранения значения типа char в C# необходима память, объем которой
(1) спецификацией языка не определен и зависит от конкретной реализации транслятора
(2) 2 байта
(3) для ASCII – 1 байт, для Unicode – 2 байта
(4) 1 байт
(5) зависит от числа символов в константе
В теле метода Main() содержится следующий код: object d1 = new object(); object d2 = new object(); System.Console.Write(d1 == d2); Укажите результат вывода на консоль после выполнения метода Main():
(1) 1
(2) d1 == d2
(3) 0
(4) True
(5) False
В теле метода Main() содержится следующий код: float a = new float(); int b = new int(); System.Console.Write(a == b); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) программа не корректна, так как переменные a и b имеют неопределенное значение
(2) True
(3) False
(4) 0
(5) программа не корректна, так как переменные a и b имеют несовместимые типы
Требуется вывести на консоль минимально возможное значение типа float. Для решения этой задачи разработана программа: using System; class Program { static void Main() { float a = -0.0f; Console.WriteLine( ___ ); } } Среди приведенных ниже кодов укажите код, подстановка которого вместо знаков подчеркивания позволяет получить корректную программу, решающую поставленную задачу:
(1) a.MinValue
(2) a.ToString()
(3) -0.0
(4) a.MinValue()
(5) float.MinValue
Отметьте среди перечисленных все случаи, при выполнении которых возникает потеря информации:
(1) int i = 256; byte b = (byte)i;
(2) int i = 255; byte b = (byte)i;
(3) uint u = 32000; short s = (short)u;
(4) uint u = 64000; short s = (short)u;
(5) float f = 456.5f; long l = (long)f;
Укажите среди перечисленных оператор присваивания, для которого будет выдано сообщение об ошибке преобразования типа:
(1) byte b=10; b=b+b;
(2) int a=10; a=a*a;
(3) float f=10.0f; f=f+f;
(4) long s=10; s=s*s;
(5) uint u=10; u=u*u;
В теле метода Main() содержится следующий код: object box = 65; char original; original = ____; Среди указанных ниже кодов укажите код, подстановка которого вместо знаков подчеркивания позволяет присвоить переменной original символ А, имеющий код 65:
(1) (char)box
(2) (char)(int)box
(3) (int)box
(4) box
(5) (object)box
В теле метода Main() содержится код, предназначенный для вычисления радиус R круга, площадь S которого равна 452,4. ____ S=452.4f; double R = System.Math.Sqrt(S/ System.Math.PI); Среди перечисленных ниже типов укажите все типы, подстановка каждого из которых вместо знаков подчеркивания позволяет получить программу, решающую поставленную задачу:
(1) long
(2) int
(3) double
(4) decimal
(5) float
Укажите истинное высказывание из приведенного перечня: Если имя локальной переменной, объявленной в блоке, совпадает с именем поля, то:
(1) поле в блоке перекрывается переменной, то есть поле становится невидимым
(2) переменная в блоке перекрывается полем, то есть переменная становится невидимой
(3) будет выдана синтаксическая ошибка
(4) для доступа к полю необходимо использовать полную квалификацию имени
(5) будет сгенерировано исключение на этапе исполнения программы
Укажите все варианты, относящиеся к допустимому назначению начального значения (инициализации) локальным переменным:
(1) double x = -36.5;
(2) ushort x = -35;
(3) short x = 65500;
(4) decimal x = 56.34;
(5) float y=0.24E5f;
В теле метода Main() содержится следующий программный код: short a = 1, b = 4, c; c = (short)((a << 8 )+b); System.Console.Write(c); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 12
(2) 516
(3) трансляция программы завершается неудачно
(4) 260
В теле метода Main() содержится следующий программный код: int a; float b = 4.5f; a = (int)b++; b = b - a; System.Console.Write(++b); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 1,5
(2) 0
(3) метод Main() не может быть выполнен: трансляция программы завершается неудачно
(4) 2,5
В теле метода Main() содержится приведенный ниже программный код: byte a = 0x8, b, maska =____; b = (byte)(a ^ maska++); System.Console.Write(b); Среди приведенных ниже инициализаторов укажите один инициализатор, подстановка которого вместо знаков подчеркивания позволит получить программу, которая выведет на экран десятичное значение 6:
(1) 0xF
(2) 0x7
(3) (byte)~a
(4) 0xE
В теле метода Main() содержится следующий программный код: int a = 2, b; b = (byte)a++ == 3 ? 0 : (a << 1 + 2); System.Console.WriteLine(b); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 0
(2) 24
(3) трансляция программы завершается неудачно
(4) 3
Из приведенных ниже фрагментов кода укажите фрагмент, соответствующий объявлению ссылки на двухмерный массив, элементами которого являются строки:
(1) string [][] a;
(2) char[] a;
(3) string ** a;
(4) char *a[];
(5) string [,] a;
В теле метода Main() содержится следующий программный код: int[] a, b, c; a = new int[] { 44, 55 }; b = new int[] { 44, 55 }; c = a; c = new int[] { 88, 89 }; System.Console.Write((a = b) + ":" + (a = c)); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) метод Main() не может быть выполнен: трансляция программы завершается неудачно
(2) True: True
(3) 44, 55:88, 89
(4) System.Int32[]:System.Int32[]
(5) True: False
Следующий фрагмент метода Main() содержит одну или несколько ошибок синтаксиса: int[2,3] A = { {55, 77, 66}, {34, 85, 66} }; int[,] B = new int[2,2] { { 11, 22 }, { 33, 44 } }; int[] C = new int[]; A = B; Из приведенных высказываний укажите все высказывания, которые раскрывают причины некорректности фрагмента:
(1) в объявлении массива А недопустимо в данном месте указывать размерность
(2) в объявлении массива А пропущены ключевые слова: new int[,]
(3) в объявлении массива В недопустимо указывать размерность, если задана инициализация
(4) ссылка на массив В не может быть преобразована в ссылку на массив А, так как массивы имеют разную размерность
(5) в объявлении массива С должна быть указана размерность
Программа предназначена для заполнения матрицы и вывода в консоль двух элементов матрицы: class Program { static void Main() { int[,] a; a = new int[,] { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } }; System.Console.Write("{0} {1} ", _______); } } Среди приведенных кодов укажите код, подстановка которого вместо знаков подчеркивания приведет к корректной программе, выводящей на консоль значения: 4 8
(1) a[1,0], a[2,1]
(2) a[2,1], a[3,2]
(3) a[0, 1], a[1, 2]
(4) a[1,2], a[2,3]
В теле метода Main() содержится следующий код: int s = 1; int[] b = new int[13]; int[] a = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 }; a.CopyTo(b, 1); s += a[4] + a[7]; s += b[10]; System.Console.Write("{0} {1} {2} ", s, a.Length, a.GetUpperBound(0)); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) программа завершается аварийно из-за ошибки в приведенном фрагменте
(2) 22 12 11
(3) 21 12 11
(4) 22 11 0
Проанализируйте программу и определите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение: using System; class Program { static void Main() { int[][] a; int[] b1 = { 1, 2 }, b2 ={3,4}; a = new int[2][]; a[1] = b1; a[0] = b2; a[0][0]=7; a[0][1] = 5; a[1][1]=0; Console.Write("{0} {1} ", b1[0], b1[1]); Console.Write("{0} {1} ", b2[0], b2[1]); } }
(1) программа выдает синтаксическую ошибку, так как ссылки a и b являются ссылками разных типов
(2) 7 5 3 0
(3) 1 2 3 4
(4) 1 0 7 5
Из приведенного перечня укажите все истинные утверждения, относящиеся к строкам:
(1) строка может быть создана конструктором по умолчанию (без параметров) класса String
(2) каждый символ строки имеет код, соответствующий кодировке ASCII
(3) строка может быть создана конструктором класса String с параметром в виде массива символов
(4) строка может быть создана конструктором класса String с параметром в виде строковой константы
(5) каждый символ строки имеет тип char
Проанализируйте программу и определите результат вывода. Код символа 0 равен 48. using System; class Program { static void Main() { int a=12, b=34; string s = "Сумма="; s += '0'+ a + b; Console.Write(s); } }
(1) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
(2) сумма=01234
(3) сумма=94
(4) сумма=0+12+34
(5) 01234
В теле метода Main() содержится следующий код: string s = "0?234"; s[1]='1'; s = "-"+s[1]+ s[2] + s[3]; System.Console.Write(s); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) -123
(2) -012
(3) -6
(4) -3
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
В теле метода Main() содержится следующий код: string str = "wofirf"; str = str.Replace('f', 'o'); str = str.Substring(0,3)+str.Substring(4); System.Console.Write(str); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) wooro
(2) wffrf
(3) wir
(4) wofwofi
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
В теле метода Main() содержится следующий код: string[] s = @"a\tb c! \td".Split(' ', '!'); System.Console.WriteLine(s[0]+"*"+s[1]+"*"+s[2]+"*"+s[3]); Укажите результаты вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) a b*c** d
(2) a b*c* d*
(3) a\tb*c**\td
(4) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
(5) программа выдает сообщение об аварийном завершении, по причине выхода за границы массива
Из приведенного перечня укажите все утверждения, соответствующие семантике оператора return.

Оператор return используется

(1) для выхода из метода
(2) для выхода из цикла и продолжения метода
(3) для возврата значения вызываюшему методу
(4) для выхода из оператора switch на следующий оператор
(5) для выхода из текущего блока во внешний блок
Приведенный фрагмент исходного кода размещен в теле метода Main: int[] Массив = { 4, 5, 6, 8, 7 }; int s=0, i=0; for (; i < Массив.Length(); i++) { int s = 6; if (i % 3 == 0 && Массив[i] % 3 != 0) continue; s = Массив[i]; System.Console.WriteLine(s); } Трансляция программы завершена неудачно. Из приведенных высказываний укажите все высказывания, которые раскрывают причину некорректности программы:
(1) объект Массив не имеет метода Length()
(2) имя локальной переменной Массив содержит символы русского алфавита
(3) в заголовке цикла пропущен элемент "инициализация"
(4) в заголовках условных операторов операция && некорректна, вместо нее необходимо использовать операцию &
(5) в данном контексте переменная s не может быть объявлена повторно
В теле метода Main() содержится следующий код: double a=0; string msg="не определено"; if (a > 1) if (a < 4) msg = "внутри";; else msg = "снаружи"; System.Console.WriteLine(msg); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) внутри
(2) снаружи
(3) не определено
(4) программа не выполняется, так как обнаружена синтаксическая ошибка, связанная с лишней точкой с запятой
В теле метода Main() содержится следующий код: int[,] a = { { 1,2 }, { 3,4 }, {5,6} }; int s, j; s=j=0; for(int i = 0; i<3; i++, j=0) while (j <= 1) s += a[i, j++]; System.Console.WriteLine(s); Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 9
(2) 12
(3) 21
(4) при выполнении программы фиксируется исключение: нарушение границ массива
(5) программа не выполняется, так как обнаружена синтаксическая ошибка
Проанализируйте приведенный код, определенный в методе Main(): int i, смена=3; string d; if ((i = int.Parse(System.Console.ReadLine())) < 6) смена = int.Parse(System.Console.ReadLine()); switch (i) { case 6: case 7: d = "Выходной"; goto case 8; default: d = "Работаю"; switch (смена) { case 1: System.Console.WriteLine(d + " в первую смену"); break; case 2: System.Console.WriteLine(d + " во вторую смену"); break; default: System.Console.WriteLine("Не работаю"); break; } break; case 8: System.Console.WriteLine("Отдыхаю"); return; } Укажите результат вывода, если после успешного запуска программы на компиляцию и выполнение пользователь ввел с клавиатуры 4, а затем 0.
(1) не работаю
(2) работаю в первую смену
(3) работаю во вторую смену
(4) отдыхаю
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
Функция, определяемая как метод класса,
(1) должна содержать в заголовке модификатор function
(2) должна содержать в заголовке тип возвращаемого значения, отличный от void
(3) в обязательном порядке должна содержать в теле оператор return
(4) должна иметь в списке параметров как минимум один параметр
(5) может иметь в списке параметров модификатор params
Укажите из перечисленного все истинные высказывания:
(1) в операторе вызова метода аргументы должны иметь имена, совпадающие с именами параметров метода
(2) в операторе вызова метода типы аргументов должны совпадать с типами параметров метода
(3) параметр принимает значение соответствующего ему по порядку следования аргумента
(4) после выполнения процедуры управление всегда возвращается на оператор, следующий за вызовом
(5) вызов функции должен быть частью выражения
Приведенные ниже процедуры и функции определены как методы одного класса. Укажите результат вывода на консоль после выполнения программы. static void Main() { char[] ch = {'с', 'т', 'р', 'о', 'к', 'а'}; string a = new string(ch); P(F(a)); P(a); } static string F(string a) { string b=""; for (int i = 0; i < a.Length; i++) b = b + a[i]; b=b.Replace('о', 'а'); b=b.Replace('к', 'н'); a.Replace('о', 'а'); a.Replace('к', 'н'); return b; } static void P(string a) { System.Console.Write("{0} ", a); } Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) страна строка
(2) страна страна
(3) строка строка
(4) при выполнение программы фиксируется исключение: нарушение границ массива
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
Приведенные ниже процедуры и функции определены как методы одного класса. public static int minVal( ___________ ) { int m = param[0]; for (int i = 1; i < param.Length; i++) if (param[i] < m) m = param[i]; return m; } public static void Main() { int min1 = minVal(5, 3); int[] args = { 45, 67, 34, 9, 112, 8 }; int min2 = minVal(args); Console.WriteLine(min1 + " " + min2); } Среди приведенных кодов укажите код, подстановка которогг вместо знаков подчеркивания приведет к корректной программе, выводящей на консоль цифры 3 8
(1) int[] param;
(2) params int[] param
(3) int param
(4) int param[]
(5) ref int param
Приведенные ниже процедуры и функции определены как методы одного класса. static double Func(byte a, int b) { return a * b; } static double Func(long a, double b) { return a - b; } static double Func(long a, float b) { return a + b; } static double Func(short a, int b) { return b % a; } static void Main() { byte a = 2; System.Console.Write(Func(a+1, 3)); } Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
(1) 9
(2) 0
(3) 6
(4) 1
(5) программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок

В консольном приложении точкой входа в программу является метод,

(1) который может иметь любое имя, а его определение в исходном коде класса Program должно быть первым
(2) который имеет имя Main и должен быть определен в классе Program
(3) который имеет имя Main и может быть определен в любом классе
(4) который имеет имя main и может быть определен в любом классе
(5) имя которого указывает пользователь при запуске приложения

"Сбор мусора" (Garbage Collection) - это

(1) одно из устройств ЭВМ, на которой функционирует среда исполнения CLR
(2) одна из функций среды исполнения CLR
(3) удаление из файловой системы временных файлов, созданных при выполнении программы
(4) освобождение ранее выделенной для объекта области основной памяти в том случае, если выделенная область программой больше не используется
(5) принудительное освобождение ресурсов, ранее выделенных программе, при возникновении исключительной ситуации
Для вывода на консоль сообщения "Проба пера" разработана программа, код которой полностью приведен ниже: static void Main() { System.Console.Write("Проба пера"); } Трансляция программы завершена неудачно. Какое из приведенных ниже высказываний раскрывает причину некорректности программы:
(1) в процедуре Main не указаны параметры
(2) не указана директива using System для фиксации используемого пространства имен
(3) процедура Main обязана возвращать значение в виде целого числа
(4) процедура Main должна быть определена как метод класса
(5) метод Write принадлежит не классу, а объекту, и его вызов должен выполняться через предварительно созданный объект класса Console
Программа предназначена для вывода на консоль значения случайного вещественного числа в интервале [0,1): using System; class Program { static void Main() { Random rnd = new Random(); Console.Write( ___ ); } } Среди приведенных ниже кодов укажите код, которым необходимо заменить знаки подчеркивания для получения корректной программы, решающей поставленную задачу:
(1) rnd
(2) rnd.NextDouble()
(3) Random.NextDouble()
(4) NextDouble()
(5) rnd.NextDouble
Укажите из приведенного перечня тип, который может использоваться только в небезопасных (unsafe) участках кода на C#:
(1) byte
(2) ulong
(3) void
(4) указатели(pointer)

Для хранения значения типа double в C# необходима память, объем которой

(1) спецификацией языка не определен и зависит от конкретной реализации транслятора
(2) определяется длиной машинного слова процессора
(3) 4 байта
(4) 4 байта или 8 байт в зависимости от значения
(5) 8 байт
В теле метода Main() содержится следующий код: Random d1 = new Random(777); Random d2 = new Random(777); System.Console.Write(d1 == d2); Укажите результат вывода на консоль после выполнения метода Main():
(1) True
(2) False
(3) 1
(4) System.Random
(5) либо True, либо False, но конкретный результат определить невозможно, так как неизвестны значения переменных d1 и d2
В теле метода Main() содержится следующий код: int a = new int(); int b = new int(); System.Console.Write(a == b); Укажите результат вывода на консоль после выполнения метода Main():
(1) System.Int32
(2) метод Main не выполняется: программа содержит ошибки
(3) True
(4) False
(5) 0
Требуется вывести на консоль максимально возможное значение типа short. Для решения этой задачи разработана программа: using System; class Program { static void Main() { short a = 255; Console.WriteLine( ___ ); } } Среди приведенных ниже кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания позволяет получить корректную программу, решающую поставленную задачу:
(1) short.MaxValue
(2) 32767.ToString()
(3) a.MaxValue
(4) a.ToString()
(5) a.MaxValue()
Отметьте среди перечисленных все случаи, в которых может возникать необходимость в явном преобразовании ссылки одного типа в ссылку другого типа (если это не ссылки на строки):
(1) при выполнении арифметических операций
(2) при выполнении операции присваивания
(3) при подстановке аргумента вместо параметра
(4) при выполнении операции "упаковки" (boxing)
(5) при выполнении операции "распаковки" (unboxing)
Укажите среди перечисленных все варианты операции присваивания, в которых преобразование типа источника (правая часть оператора присваивания) к типу приемника (левая часть оператора присваивания), может быть только явным:
(1) int <---- byte
(2) int <---- uint
(3) decimal <---- int
(4) long <---- double
(5) double <---- float
В теле метода Main() содержится следующий код: object box = 5.125; float original; original = ____; Среди указанных ниже кодов укажите код, подстановка которого вместо знаков подчеркивания позволяет присвоить переменной original значение 5.125:
(1) (float)(double)box
(2) (float)box
(3) (double)box
(4) box
(5) (long)box
В теле метода Main() содержится код, предназначенный для вычисления расстояния от начала координат до точки с координатами x=3,y=4: ____ x=3,y=4; double d; d = System.Math.Sqrt(x*x + y*y); Среди перечисленных ниже типов укажите все типы, подстановка кажого из которых вместо знаков подчеркивания позволяет получить программу, решающую поставленную задачу:
(1) long
(2) char
(3) float
(4) sbyte
(5) decimal
Укажите варианты всех истинных высказываний из приведенного перечня:

Область памяти для хранения локальной переменной выделяется:

(1) в процессе перевода исходного кода в код на языке MSIL
(2) на этапе исполнения программы, причем единственный раз - только при первом выполнении блока, в котором эта переменная объявлена
(3) на этапе исполнения программы, причем каждый раз, когда выполняется блок, в котором эта переменная объявлена
(4) на этапе исполнения программы при входе в метод, в котором эта переменная объявлена
(5) на этапе исполнения программы при достижении точки объявления этой переменной
Укажите все истинные утверждения, относящиеся к назначению начального значения (инициализации) локальных переменных:
(1) начальное значение для всех локальных переменных назначается по умолчанию в соответствии с типом переменной
(2) для переменных, у которых предусмотрен инициализатор, начальным значением является значение инициализирующего выражения, а для остальных локальных переменных - значение по умолчанию в соответствии с типом переменной
(3) для переменных, у которых предусмотрен инициализатор, начальным значением является значение инициализирующего выражения, а для остальных локальных переменных начальное значение не назначается
(4) для локальной переменной инициализатор обязательно должен быть константой или константным выражением
(5) для локальной переменной инициализатор может быть любым совместимым с типом переменной выражением, значение которого может быть вычислено на момент выполнения объявления
В теле метода Main() содержится следующий программный код: short a = 10, b = 4; double c; c = (double)(a%4) / (double)(b%10); System.Console.Write(c); Укажите результат вывода на консоль после выполнения метода Main():
(1) 0
(2) 0,5
(3) метод Main не выполняется: программа содержит ошибки
(4) 0,9
В теле метода Main() содержится следующий программный код: short a ,b=4; a = 5%3 + 5 * ++b; System.Console.Write(a); Укажите результат вывода на консоль после выполнения метода Main():
(1) 27
(2) 22
(3) метод Main не выполняется: программа содержит ошибки
(4) 20
В теле метода Main() содержится приведенный ниже программный код: byte a=0x8C, b, maska=_____; b = (byte)(a ^ maska); System.Console.WriteLine(b); Среди приведенных ниже инициализаторов укажите все инициализаторы, подстановка каждого из которых вместо знаков подчеркивания позволит получить программу, которая выведет на экран десятичное значение 255:
(1) 0x73
(2) ~a
(3) 115
(4) 0x8C
В теле метода Main() содержится следующий программный код: sbyte a=-1, b; b = (sbyte)(a + 1); System.Console.WriteLine(b); Укажите результат вывода на консоль после выполнения метода Main():
(1) 0
(2) -1
(3) 128
(4) 63
Из приведенных ниже фрагментов кода укажите фрагмент, соответствующий объявлению ссылки на двухмерный массив, элементами которого являются символы:
(1) char[,] a;
(2) char[][] a;
(3) string[] a;
(4) char** a;
(5) char *a[];
В теле метода Main() содержится следующий программный код: int[] a,b,c; a = new int[] { 55, 77 }; b = new int[] { 55, 77 }; c = new int[] { 88, 89 }; System.Console.Write(a == b); System.Console.Write(":"); System.Console.Write(a == c); Укажите результат вывода на консоль после выполнения метода Main():
(1) метод Main не выполняется: программа содержит ошибки
(2) True:False
(3) False:False
(4) True:System.Int32[]
Для поэлементного сложения массива A и B и запоминания результата в массиве С разработан приведенный ниже исходный код, который размещен в методе Main(): int[] A,B,C; A = new int[] { 55, 77 }; B = new int[] { 11, 22, 33, 44 }; C = new int[A.Length]; C = A + B; System.Console.Write(C); Трансляция программы завершена неудачно. Из приведенных высказываний укажите высказывание, которое раскрывает причину некорректности программы:
(1) переменные B и C не являются ссылками на массив
(2) массивы A и B имеют разное количество элементов
(3) область памяти, выделенная под массив C, недостаточна по объему
(4) операция + не определена для ссылок на массив
(5) метод System.Console.Write не допускает использование в качестве аргумента ссылок
Программа предназначена для заполнения и вывода элементов матрицы: using System; class Program { static void Main() { int[,] a; a = new int[2,2] { {22,33}, {44,55} }; Console.Write( ____ ); } } Среди приведенных кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания приведет к корректной программе, выводящей на консоль значения: 22 44 33 55
(1) "{0} {2} {1} {3}", a[0,0], a[0,1], a[1,0], a[1,1]
(2) "{0} {3} {2} {1}", a[0,0], a[1,1], a[0,1], a[1,0]
(3) "{0} {1} {2} {3}", a[0,0], a[0,1], a[1,0], a[1,1]
(4) "{0} {1} {3} {2}", a[0,0], a[1,0], a[0,1], a[1,1]
В теле метода Main() содержится следующий код: int[,] a, b; a = new int[2, 2] { { 22, 33 }, { 44, 55 } }; b = new int[1, 1] { { 10 } }; b = a; a[0, 0] = a[1, 1] = 77; System.Console.Write("{0} {1}",b[0,0],b[0,1]); System.Console.Write("{0} {1}",b[1,0],b[1,1]); Укажите результат вывода на консоль после выполнения метода Main():
(1) метод Main не выполняется: программа содержит ошибки
(2) 22 33 44 55
(3) 10 33 44 55
(4) 77 33 44 77
Проанализируйте программу и определите результат вывода. using System; class Program { static void Main() { int[][] a; int[] b; a = new int[2][]; a[0] = new int[]{22, 33}; a[1] = new int[]{44, 55}; b = a[0]; b[0] = 77; b = a[1]; b[1] = 88; Console.Write("{0} {1}", a[0][0], a[0][1]); Console.Write("{0} {1}", a[1][0], a[1][1]); } }
(1) метод Main не выполняется: программа содержит ошибки
(2) 22 33 44 55
(3) 77 33 44 88
(4) 77 33 88 55
Из приведенного перечня укажите все истинные утверждения, относящиеся к строкам:
(1) каждый символ строки имеет код, соответствующий кодировке UNICODE
(2) каждый символ строки имеет код, соответствующий кодировке ASCII
(3) код каждого символа строки имеет длину 1 байт
(4) код каждого символа строки имеет длину 2 байта
(5) код символа строки имеет длину 1 байт, если это стандартный символ ASCII, или 2 байта, если это нестандартный символ ASCII
Проанализируйте программу и определите результат вывода. using System; class Program { static void Main() { string s = "Сумма="; s = s + 22 + 33; Console.Write(s); } }
(1) Сумма=2233
(2) Сумма=55
(3) Сумма=22+33
(4) Сумма=+22+33
В теле метода Main() содержится следующий код: string[] words = new string[] { "ИНФОРМАТИКА", "МОСКВА" }; string s=""; s = s + words[1][0] + words[0][8] + 'Р'; System.Console.Write(s); Укажите результат вывода на консоль после выполнения метода Main():
(1) метод Main не выполняется: программа содержит ошибки
(2) МИР
(3) ИР
(4) ИНФОРМАТР
Для преобразования строки КОШКА в строку МЫШКА разработан приведенный ниже исходный код, который размещен в методе Main(): string s = "КОШКА"; s[0]='М'; s[1] = 'Ы'; Console.Write(s); Трансляция программы завершена неудачно. Из приведенных высказываний укажите высказывание, которое раскрывает причину некорректности программы:
(1) строка не может содержать символы русского алфавита
(2) строка в языке С# относится к типам значений, а для типов значений операция индексации элемента не имеет смысла и не определена
(3) строка в языке C# относится к ссылочным типам, но в виде исключения для строк не определена операция индексации
(4) неверно записан литерал в правой части операторов присваивания: правильной записью должно быть s[0]="М"; s[1] = "Ы"
(5) в языке C# присваивание значения элементу строки не допускается
Приведенный фрагмент исходного кода размещен в теле метода Main и разрабатывался для проверки цифр телефонного номера на принадлежность некоторому множеству цифр. Укажите результат проверки, который выведет программа, если пользователь ввел с консоли символы 777-45-12 и нажал клавишу ENTER. string s = System.Console.ReadLine(); bool f1,f2,f3; f1 = s[0] > '3' && s[0] < '8'; f2 = s[s.Length-1] == '3' || s[s.Length-1] == '4'; f3 = !(f1 || f2); System.Console.Write("{0} {1} {2}",f1,f2,f3);
(1) True True False
(2) True False False
(3) 1 0 0
(4) True True True
Оператор continue используется
(1) в качестве пустого оператора
(2) для перехода к следующей итерации цикла
(3) для выхода из цикла
(4) для продолжения перебора case-ветвей в операторе switch
(5) для возврата из процедуры и продолжения программы с точки ее вызова
Приведенный фрагмент исходного кода размещен в теле метода Main и разрабатывался для проверки попадания точки на числовой оси в интервал [1,4]: double Точка; string msg; Точка = double.Parse(System.Console.ReadLine()); if (Точка < 1) msg = "Слева"; if (Точка >=1 & Точка <=4) msg = "Внутри"; if (Точка > 4) msg = "Справа"; System.Console.WriteLine(msg); Трансляция программы завершена неудачно. Из приведенных высказываний укажите высказывание, которое раскрывает причину некорректности программы:
(1) в программе используется локальная переменная Точка с неопределенным значением
(2) в программе используется локальная переменная msg с неопределенным значением
(3) имя локальной переменной Точка содержит символы русского алфавита
(4) операция & не корректна в контексте выражения Точка >=1 и Точка <=4, вместо нее необходимо использовать операцию &&
(5) во всех операторах ветвления отсутствует альтернативная ветвь else
В теле метода Main() содержится следующий код: int[] a = new int[]{ 4, 3, 6, 8, 7 }; int s = 0, i; for (i = 0; i < a.Length; i++) { if (i % 2 == 0) continue; if (a[i] % 2 == 0) break; s += a[i]; } System.Console.WriteLine(s); Укажите результат вывода на консоль после выполнения метода Main():
(1) 11
(2) 0
(3) 3
(4) при выполнении программы фиксируется исключение: нарушение границ массива
В теле метода Main() содержится следующий код: int a; a = int.Parse(System.Console.ReadLine()); if (a <= 12) System.Console.Write("Как погода? "); if (a < 9) System.Console.Write("Солнце! "); else System.Console.Write("Дождь! "); Укажите из приведенных ниже вариантов вводимых данных все варианты, при которых будет выведено сообщение: "Как погода? Дождь!"
(1) 11
(2) 15
(3) 9
(4) 12
(5) 8
Проанализируйте приведенный код, определенный в методе Main(), и укажите результат вывода, если после запуска программы пользователь набрал символы Пятница и нажал клавишу ENTER. string day,msg="0"; day = System.Console.ReadLine(); switch(day) { case "1": case "Понедельник": msg = msg + "1"; break; case "2": case "Вторник": msg = msg + "2"; break; default: msg = msg + "3"; break; } System.Console.WriteLine(msg);
(1) 123
(2) 0123
(3) 03
(4) 3
(5) Пятница
Укажите все истинные высказывания из приведенного перечня:

Процедура, определяемая как метод класса,

(1) должна содержать в заголовке модификатор procedure
(2) должна содержать в заголовке ключевое слово void в качестве типа возвращаемого значения
(3) в обязательном порядке должна содержать в теле оператор return
(4) должна иметь в заголовке как минимум один параметр
(5) может иметь в заголовке параметры с модификатором out
Укажите из перечисленного все, что входит в сигнатуру метода:
(1) модификатор доступа к методу
(2) имена параметров метода
(3) имя метода
(4) тип возвращаемого значения
(5) типы параметров
Приведенные ниже процедуры и функции определены как методы одного класса. static void Main() { int[] a = new int[]{ 4, 3, 6 }; P(F(a)); P(a); } static int[] F(int[] a) { int[] b = new int[a.Length / 2]; for (int i = 0; i < b.Length; i++) { b[i] = a[i]; a[i]++; } return b; } static void P(int[] a) { for (int i = 0; i < a.Length; i++) System.Console.Write("{0} ", a[i]); } Укажите результат вывода на консоль после выполнения программы.
(1) 4 4 3 6
(2) 4 5 3 6
(3) 5 3 6 4
(4) при выполнение программы фиксируется исключение: нарушение границ массива
Приведенные ниже процедуры и функции определены как методы одного класса. static void F(ref string s1, string[] s2) { s1 = string.Join(" ", s2); } static void Main() { string[] word = { "ОСТАП", "БЕНДЕР" }; ______________ F(ref s, word); System.Console.Write(s); } Среди приведенных кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания приведет к корректной программе, выводящей на консоль строку ОСТАП БЕНДЕР
(1) string s=null;
(2) string s;
(3) string s="Балаганов";
(4) string s="";
(5) string s = ' ';
Приведенные ниже процедуры и функции определены как методы одного класса. static double F(int a, int b) { return a + b; } //Вариант 1 static double F(double a, double b) { return a + b; } //Вариант 2 static double F(short a, double b) { return a + b; } //Вариант 3 static double F(short a, int b) { return a + b; } //Вариант 4 static void Main() { int a = 2; System.Console.Write(F(a, 3.5)); } Укажите истинное утверждение, относящееся к вызову функции F:
(1) будет вызвана функция: Вариант 1
(2) будет вызвана функция: Вариант 2
(3) будет вызвана функция: Вариант 3
(4) будет вызвана функция: Вариант 4
(5) нет ни одного варианта реализации функции F, который соответствует вызову

Метод, определяющий точку входа в программу на языке C# должен иметь имя

(1) main
(2) WinMain
(3) MAIN
(4) Main
(5) ApplicationRun

К функциям среды исполнения CLR относится:

(1) объединение всех исходных модулей на языке С# в один исходный модуль
(2) препроцессорная обработка текста на языке MSIL
(3) сборка мусора
(4) трансляция кода MSIL в коды на языке машинных команд процессора
(5) обработка исключений
Для вывода на консоль сообщения "Изучаем C#" разработана программа, код которой полностью приведен ниже: class MyClass { static int Main() { Console.Write("Изучаем C#"); return 0; } } Трансляция программы завершена неудачно. Какое из приведенных ниже высказываний раскрывает причину некорректности программы:
(1) не указано пространство имен, в котором определен тип Console
(2) метод Main обязан возвращать значение 1
(3) метод Main может возвращать только тип void
(4) метод Main не может быть статическим методом
(5) метод Main может быть определен только в классе Program
Программа предназначена для вывода на консоль значения числа "пи;": class Program { static void Main() { System.Console.Write( _________ ); } } Среди приведенных ниже кодов укажите код, которым необходимо заменить знаки подчеркивания для получения корректной программы, решающей поставленную задачу:
(1) System.Math.PI()
(2) PI
(3) Math.PI
(4) System.Math.PI
(5) PI.Math. System
В приведенном перечне укажите все типы, соответствующие целым числам без знака:
(1) byte
(2) long
(3) char
(4) decimal
(5) uint

Литерал 25E1 определяет константу типа:

(1) float
(2) decimal
(3) double
(4) int
(5) uint
В теле метода Main() содержится следующий код: Random d1 = new Random(555); Console.Write(d1); Укажите результат вывода на консоль после выполнения метода Main():
(1) Random
(2) null
(3) System.Random
(4) 555
(5) текущее значение таймера в тиках
В теле метода Main() содержится следующий код: long a = long.MaxValue; long b; System.Console.Write(a == b); Укажите результат вывода на консоль после выполнения метода Main():
(1) True
(2) False
(3) либо True, либо False, но конкретный результат определить невозможно, так как неизвестно значение переменной b
(4) метод Main не выполняется: программа содержит ошибки
(5) System.Int64
Среди приведенных ниже кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания позволяет получить корректную программу, которая выведет на консоль True: using System; class Program { static void Main() { byte A = _______; Console.WriteLine(A == Byte.MaxValue); } }
(1) new byte(255)
(2) 255
(3) 256
(4) 127
(5) byte.MaxValue
Отметьте среди перечисленных все случаи, в которых явное преобразование типа может привести к побочным эффектам потери точности или значимости:
(1) преобразование byte в int
(2) преобразование uint в int
(3) преобразование byte в sbyte
(4) преобразование double в float
(5) преобразование short в double
Укажите среди перечисленных все варианты операции присваивания, в которых преобразование типа источника (правая часть оператора присваивания) к типу приемника (левая часть оператора присваивания), может быть только явным:
(1) int <---- long
(2) decimal <---- short
(3) decimal <---- float
(4) double <---- int
(5) int <---- char
В теле метода Main() содержится следующий код: object box = 44.5f; double original; original = ______ ; Среди указанных ниже кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания позволяет присвоить переменной original значение 44.5:
(1) (float)(double)box
(2) (float)box
(3) (double)box
(4) box
(5) (double)(float)box
В теле метода Main() содержится код, предназначенный для вычисления большего из двух значений: double d; d = System.Math.Max( _________ ); Среди перечисленных ниже кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания позволяет получить корректную программу:
(1) 3, 4M
(2) 3F, 4
(3) 3.0, 4UL
(4) "3","4"
(5) 3, 4
Укажите истинное высказывание из приведенного перечня:

Модификатор public в объявлении локальной переменной означает что

(1) переменная будет доступна во всех методах этого класса
(2) переменная будет доступна во всех блоках этого метода
(3) переменная будет доступна во всех классах с модификатором public
(4) переменная будет доступна во всех методах с модификатором public
(5) это объявление ошибочно
Укажите все истинные утверждения из приведенного перечня:

Локальная переменная - это переменная,

(1) объявленная в заголовке метода
(2) имя которой обязательно имеет префикс Local
(3) объявленная в теле метода
(4) объявленная в одном из блоков внутри метода
(5) объявленная с модификатором protected
В теле метода Main() содержится следующий программный код: int x,y; x = int.Parse(System.Console.ReadLine()); y = x<10 ? 55 : x<20? 35 : 45; System.Console.Write(y); Укажите результат вывода на консоль после выполнения метода Main(), если пользователь ввел символы 10 и нажал клавишу ENTER:
(1) 45
(2) 55
(3) 3545
(4) 35
В теле метода Main() содержится следующий программный код: char a='B',c; int b = 0; c = (char)(++a+b++); System.Console.Write(c); Укажите результат вывода на консоль после выполнения метода Main():
(1) D
(2) C
(3) метод Main не выполняется: программа содержит ошибки
(4) B
В теле метода Main() содержится приведенный ниже программный код: sbyte a = 0x7B, b, maska = _____; b = (sbyte)(a & maska); System.Console.WriteLine(b); Среди приведенных ниже инициализаторов укажите все инициализаторы, подстановка каждого из которых вместо знаков подчеркивания позволит получить программу, которая выведет на экран десятичное значение 11:
(1) 0x0F
(2) 15
(3) 14
(4) 0xF
(5) 0xD
В теле метода Main() содержится следующий программный код: byte a = 0xFF; sbyte b; b = (sbyte)(a >> 4); System.Console.WriteLine(b); Укажите результат вывода на консоль после выполнения метода Main():
(1) -1
(2) FF
(3) -15
(4) 15
Из приведенных ниже фрагментов кода укажите все фрагменты, соответствующие объявлению ссылок A,B на одномерный массив, элементами которого являются целые числа:
(1) int[]A,B;
(2) int []A,[]B;
(3) int[]A; int[]B;
(4) int A[],B[];
(5) int A[]; int B[];
В теле метода Main() содержится следующий программный код: int[] a, b, c; a = new int[0]; b = new int[0]; c = new int[1]; System.Console.Write(a == b); System.Console.Write(":"); System.Console.Write(a == c); Укажите результат вывода на консоль после выполнения метода Main():
(1) False:True
(2) метод Main не выполняется: программа содержит ошибки
(3) True:False
(4) False:False
Для перестановки местами первого и последнего элемента массива A разработан приведенный ниже исходный код, который размещен в методе Main(): int[] A, B; int C; A = new int[] { 55, 77, 99 }; B = A; C = B[0]; B[0] = B[B.Length]; B[B.Length] = C При выполнении программы возникло исключение. Из приведенных высказываний укажите высказывание, которое раскрывает причину некорректности программы:
(1) переменная B не является ссылкой на массив
(2) память под массив B не выделена
(3) ссылка B не инициализирована
(4) ссылки A и B не могут ссылаться на одну и ту же область памяти
(5) значение индекса при обращении к элементу массива выходит за границы массива
Программа предназначена для вывода сообщения ОГО: using System; class Program { static void Main() { char[,] a; char a = new char[3, 3] { { 'Н', 'О', 'С' }, { 'Г', 'О', 'Д' }, { 'C', 'О', 'Н' } }; Console.Write( _____________ ); } } Среди приведенных кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания приведет к корректной программе, решающей эту задачу
(1) "{0}{1}{2}", a[1,0], a[0,1], a[1,2]
(2) "{0}{1}{2}", a[1,2], a[2,1], a[2,2]
(3) "{0}{1}{2}", a[0,1], a[1,0], a[1,1]
(4) "{2}{1}{0}", a[0,1], a[1,0], a[0,1]
В теле метода Main() содержится следующий код: int[,] A, B; A = new int[2, 2]; B = new int[2, 3]{{11,12,13},{14,15,16}}; B = A; A[0, 0] = ++A[1, 1]; System.Console.Write("{0} {1} ", B[0, 0], B[0, 1]); System.Console.Write("{0} {1} ", B[1, 0], B[1, 1]); Укажите результат вывода на консоль после выполнения метода Main():
(1) метод Main не выполняется: программа содержит ошибки
(2) 1 0 0 1
(3) 0 0 0 1
(4) 1 0 0 0
Проанализируйте программу и определите результат вывода. class Program { public static void Main() { int[][] A = new int[2][]; int[] B = new int[2]; B[0] = 3; A[0] = B; B[0] = 5; B[1] = 7; A[1] = B; System.Console.Write("{0} {1} ", A[0][0], A[0][1]); System.Console.Write("{0} {1} ", A[1][0], A[1][1]); } }
(1) метод Main не выполняется: программа содержит ошибки
(2) 5 7 5 7
(3) 3 0 5 7
(4) 5 5 7 7
Из приведенного перечня операций укажите все операции, определенные для строк:
(1) +
(2) sizeof
(3) ==
(4) >
(5) >=
В теле метода Main() содержится следующий код: string S = null; int B = 30; S += B + 10; System.Console.Write(S); Укажите результат вывода на консоль после выполнения метода Main():
(1) 30+10
(2) B10
(3) 3040
(4) 40
В классе Program определен единственный метод, имеющий следующий код: public static void Main(string[] par) { string s = string.Join("+",par); System.Console.Write(s); } После трансляции исполняемый модуль программы сохранен в файле C:\P.EXE. C:\P.EXE 10 20 30 Укажите результат вывода на консоль после запуска программы из командной строки:
(1) C:\P.EXE+10+20+30
(2) 10+20+30
(3) 60
(4) C:\P.EXE60
Для преобразования строки КОШКА в строку МЫШКА разработан приведенный ниже исходный код, который размещен в методе Main(): string str = "КОШКА"; char[] s = ______________ ; s[0] = 'М'; s[1] = 'Ы'; str = new string(s); System.Console.Write(str); Среди приведенных кодов укажите код, подстановка которого вместо знаков подчеркивания приведет к корректной программе, решающей эту задачу
(1) str.Substring(0,str.Length)
(2) str
(3) str.ToCharArray()
(4) (char[])str
Требуется сформировать строку путем объединения двух исходных строк. Исходные строки объединяются в порядке убывания по алфавиту. Для решения этой задачи разработан приведенный ниже исходный код, который размещен в методе Main(): string[]s = new string[2]; string str; bool p; s[0]=System.Console.ReadLine(); s[1]=System.Console.ReadLine(); p = ____________ ; str = p? s[1]+s[0] : s[0]+s[1]; Среди приведенных кодов укажите код, подстановка которого вместо знаков подчеркивания приведет к корректной программе, решающей эту задачу
(1) s[0] < s[1]
(2) s[0].CompareTo(s[1]) < 0
(3) s[0].CompareTo(s[1]) > 0
(4) s[0] > s[1]
Оператор break используется
(1) для перехода к следующей итерации цикла
(2) в качестве пустого оператора
(3) для выхода из метода
(4) для прекращения выполнения цикла
(5) для прекращения перебора case-ветвей в операторе switch
Приведенный фрагмент исходного кода размещен в теле метода Main и разрабатывался для проверки попадания точки на числовой оси в интервал (1,4): double Точка; string msg; Точка = double.Parse(System.Console.ReadLine()); if (Точка <= 1) msg = "Слева"; else if (1 < Точка < 4) msg = "Внутри"; else msg = "Справа"; System.Console.WriteLine(msg); Трансляция программы завершена неудачно. Из приведенных высказываний укажите высказывание, которое раскрывает причину некорректности программы:
(1) не парное количество ключевых слов if и else
(2) в программе используется локальная переменная msg с неопределенным значением
(3) имя локальной переменной Точка содержит символы русского алфавита
(4) выражение 1 < Точка < 4 некорректно: в нем пропущен знак логической операции
(5) выражение Точка <= 1 не корректо: в нем сравнивается вещественное и целое значение
В теле метода Main() содержится следующий код: int[] a = new int[] { 30, 12, 5, 11, 3 }; int s = 0, i; for (i = 0; i < a.Length-1; i++) { if (a[i] % 2 == 0) continue; s += a[i]; } System.Console.WriteLine(s); Укажите результат вывода на консоль после выполнения метода Main():
(1) 16
(2) 19
(3) 42
(4) при выполнении программы фиксируется исключение: нарушение границ массива
В теле метода Main() содержится следующий код: int a = int.Parse(System.Console.ReadLine()); if (a > 9) System.Console.Write("Как дела? "); if (a < 12) System.Console.Write(" Плохо! "); else System.Console.Write(" Хорошо! "); Укажите из приведенных ниже вариантов вводимых данных все варианты, при которых будет выведено сообщение: "Как дела? Хорошо!"
(1) 11
(2) 15
(3) 9
(4) 7
(5) 12
Проанализируйте приведенный код, определенный в методе Main(), и укажите результат вывода, если после запуска программы пользователь набрал символ 4 и нажал клавишу ENTER. string day, msg = "Лишний день"; day = System.Console.ReadLine(); switch (day) { case "1": case "5": switch(day) { case "1": msg="Начало недели"; break; default: msg="Середина недели"; break; } break; case "6": case "7": msg = "Окончание недели"; break; default: msg = "Нет такого дня"; break; } System.Console.WriteLine(msg);
(1) Нет такого дня
(2) Начало недели
(3) Середина недели
(4) Окончание недели
(5) Лишний день
Укажите истинное высказывание из приведенного перечня.

Функция, определяемая как метод класса,

(1) должна содержать в заголовке модификатор function
(2) должна содержать в заголовке ключевое слово void в качестве типа возвращаемого значения
(3) должна содержать в заголовке тип возвращаемого значения, отличный от void
(4) должна содержать в заголовке строго один параметр
Укажите истинное высказывание из приведенного перечня:

Заголовок метода содержит три параметра. Каждый параметр представляет собой одномерный массив. Модификатор params может быть указан

(1) для всех массивов, содержащих элементы типа int
(2) для всех массивов, содержащих элементы типа object
(3) только для первого массива
(4) только для последнего массива
(5) для всех массивов независимо от типа элементов
Приведенные ниже процедуры и функции определены как методы одного класса. public static void Add(string s) { string word = "Май!"; s = s + word +"Дружба!"; } public static void Main() { string s = "Мир!"; Add(s); System.Console.Write(s); } Укажите результат вывода на консоль после выполнения программы.
(1) Мир!
(2) Мир!Май!Дружба!
(3) Мир!Дружба!
(4) метод Main не выполняется: программа содержит ошибки
Приведенные ниже процедуры и функции определены как методы одного класса. static void Print(int[] a) { for(int i=0; i<a.Length; i++) System.Console.Write("{0} ",a[i]); } static int[] F(int[] a, ref int[] b) { b = a; System.Array.Reverse(a); return a; } static void Main() { int[] a = new int[] { 3,5,7 }; int[] b = new int[] { 7,5,3 }; F(a,ref b); Print( ____ ); } Среди приведенных кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания приведет к корректной программе, выводящей на консоль значения 3 5 7
(1) a
(2) b
(3) F(a,ref b)
(4) F(b,ref a)
Приведенные ниже процедуры и функции определены как методы одного класса. static double F(int a, int b) { return a + b; } //Вариант 1 static double F(double a, double b) { return a + b; } //Вариант 2 static double F(short a, double b) { return a + b; } //Вариант 3 static double F(short a, int b) { return a + b; } //Вариант 4 static void Main() { decimal a = 2m; System.Console.Write(F(a, 3.5)); } Укажите истинное утверждение, относящееся к вызову функции F:
(1) будет вызвана функция: Вариант 1
(2) будет вызвана функция: Вариант 2
(3) будет вызвана функция: Вариант 3
(4) будет вызвана функция: Вариант 4
(5) нет ни одного варианта реализации функции F, который соответствует вызову

Исполняемый модуль в .NET Framework представлен

(1) на промежуточном языке MSIL
(2) в виде команд операционной системы Windows
(3) в виде команд операционной системы, установленной на компьютере
(4) в виде операторов языка Java
(5) в виде операторов языка C#

Результатом трансляции исходной программы на языке C# может быть

(1) исполняемый модуль на языке машинных команд процессора
(2) динамически компонуемая библиотека на языке машинных команд процессора
(3) динамически компонуемая библиотека на языке MSIL и метаданные
(4) исполняемый модуль на языке MSIL и метаданные
(5) программа на языке Visual Basic
Для вывода на консоль сообщения "Что-то получается" разработана программа, код которой полностью приведен ниже: using System; class MyClass { private void Main() { Console.Write("Что-то получается"); } } Трансляция программы завершена неудачно. Какое из приведенных ниже высказываний раскрывает причину некорректности программы:
(1) не указано пространство имен, в котором определен тип Console
(2) метод Main обязан возвращать значение целого типа
(3) метод Main может быть только общедоступным (public)
(4) метод Main должен быть статическим методом
(5) процедура Main должна определяться как глобальная процедура, а не как метод класса
Программа предназначена для вывода на консоль значения |-2|: using System; class Program { static void Main() { Console.Write( _____ ); } } Среди приведенных ниже кодов укажите код, которым необходимо заменить знаки подчеркивания для получения корректной программы, решающей поставленную задачу:
(1) Abs(-2)
(2) Math.Abs(-2)
(3) Abs(-2).Math
(4) new Math().Abs(-2)
(5) Math.Abs.-2
В приведенном перечне укажите все типы, соответствующие целым числам со знаком:
(1) char
(2) double
(3) decimal
(4) int
(5) short

Литерал 126m определяет константу типа:

(1) float
(2) decimal
(3) ulong
(4) byte
(5) char
В теле метода Main() содержится следующий код: Object a = 10 + 5; Object b = 9 + 6; Console.Write(a == b); Укажите результат вывода на консоль после выполнения метода Main():
(1) 15
(2) 0
(3) 1
(4) True
(5) False
В теле метода Main() содержится следующий код: byte A = new byte(); byte B = 0; System.Console.Write(A == B); Укажите результат вывода на консоль после выполнения метода Main():
(1) True
(2) False
(3) либо True, либо False, но конкретный результат определить невозможно, так как неизвестно значение переменной A
(4) метод Main не выполняется: программа содержит ошибки
(5) 1
Среди приведенных ниже кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания позволяет получить корректную программу, которая выведет на консоль True: using System; class Program { static void Main() { short A = ________ ; Console.WriteLine(A == short.MinValue); } }
(1) -32768
(2) UInt16.MinValue
(3) Int16.MinValue
(4) 0
(5) -256
Отметьте среди перечисленных все случаи, в которых явное преобразование типа может привести к побочным эффектам потери точности или значимости:
(1) преобразование double в long
(2) преобразование ulong в long
(3) преобразование byte в float
(4) преобразование int в long
(5) преобразование decimal в short
Укажите среди перечисленных все варианты операции присваивания, в которых преобразование типа источника (правая часть оператора присваивания) к типу приемника (левая часть оператора присваивания), может быть только явным:
(1) int <---- short
(2) short <---- long
(3) decimal <---- byte
(4) byte <---- sbyte
(5) char <---- int
В теле метода Main() содержится следующий код: object box = 127; ulong original; original = _________ ; Среди указанных ниже кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания позволяет присвоить переменной original значение 127:
(1) (uint)box
(2) (uint)(byte)box
(3) (uint)(int)box
(4) box
(5) (ulong)(int)box
В теле метода Main() содержится код, предназначенный для вычисления меньшего из двух значений: double d; d = System.Math.Min( _________ ); Среди перечисленных ниже кодов укажите все коды, подстановка кажого из которых вместо знаков подчеркивания позволяет получить корректную программу:
(1) 2E2, 15F
(2) 200, 15M
(3) 200F, 15L
(4) '200', '15'
(5) 200.0, 15
Укажите истинное высказывание из приведенного перечня:

Модификатор static в объявлении локальной переменной типа int означает что

(1) переменная будет создаваться при запуске программы
(2) это объявление ошибочно
(3) переменной по умолчанию будет присвоено значение нуль
(4) переменная не будет уничтожаться при выходе из метода, в котором она объявлена
(5) значение этой переменной после ее создания изменить нельзя
Укажите все истинные утверждения из приведенного перечня:

Локальная переменная доступна (видна)

(1) в методе, в котором она объявлена
(2) только в том блоке, в котором она объявлена
(3) в том блоке, в котором она объявлена и во вложенных в него блоках
(4) во всех методах своего класса
(5) только в тех методах своего класса, которые имеют модификатор public
В теле метода Main() содержится следующий программный код: int x; string y; x = int.Parse(System.Console.ReadLine()); y = x<40 ? "Куда?" : x<60? "Куда глаза глядет" : "В гости"; System.Console.Write(y); Укажите результат вывода на консоль после выполнения метода Main(), если пользователь ввел символы 55 и нажал клавишу ENTER:
(1) Куда глаза глядет
(2) В гости
(3) Куда?
(4) Куда? Куда глаза глядет
В теле метода Main() содержится следующий программный код: char a='B',c; int b = 2; c = (char)(++a - --b); System.Console.Write(c); Укажите результат вывода на консоль после выполнения метода Main():
(1) B
(2) C
(3) A
(4) D
В теле метода Main() содержится приведенный ниже программный код: byte a = 0xC3, maska =______; sbyte b; b = (sbyte)(a ^ maska); System.Console.WriteLine(b); Среди приведенных ниже инициализаторов укажите все инициализаторы, подстановка каждого из которых вместо знаков подчеркивания позволит получить программу, которая выведет на экран десятичное значение (-1):
(1) ~a
(2) 0xF
(3) 0x3C
(4) (byte)~a
(5) 0
В теле метода Main() содержится следующий программный код: sbyte a = -128; sbyte b; b = (sbyte)(a >> 4); System.Console.WriteLine(b); Укажите результат вывода на консоль после выполнения метода Main():
(1) -16
(2) 16
(3) -8
(4) 8
Из приведенных ниже фрагментов кода укажите все фрагменты, соответствующие объявлению ссылок A,B на массив, элементами которого являются массивы вещественных чисел:
(1) float[ [] ]A,B;
(2) float[,]A; float[,]B;
(3) float[,] A,B;
(4) float[][] A,B;
(5) float[][]A; float[][]B;
В теле метода Main() содержится следующий программный код:

Укажите результат вывода на консоль после выполнения метода Main():

int[] a, b, c; a = new int[1] {5}; b = new int[1] {9}; c = new int[0]; System.Console.Write(a.ToString() == b.ToString()); System.Console.Write(":"); System.Console.Write(a.ToString() == c.ToString());
(1) True:False
(2) метод Main не выполняется: программа содержит ошибки
(3) True:True
(4) False:False
Для перестановки элементов массива A в обратном порядке разработан приведенный ниже исходный код, который размещен в методе Main(): short[] A; short[] B; A = new short[] { 1, 2, 3 }; B = new short[2]; B = A; System.Array.Reverse(B,1,3); При выполнении программы возникло исключение. Из приведенных высказываний укажите высказывание, которое раскрывает причину некорректности программы:
(1) массив B имеет размер, недостаточный для хранения копии массива A
(2) попытка обратиться ячейке памяти за границами памяти, выделенной для массива A
(3) элементы массива B не инициализированы
(4) количество элементов в массиве A не определено
(5) ссылки A и B указывают на массивы с разным количеством элементов
Программа предназначена для заполнения и вывода элементов матрицы: using System; class Program { static void Main() { int[,] a; int B = 4; a = new int[2, 2] { _________ }; Console.Write("{0},{1},{2},{3}", a[1,1], a[1,0], a[0,0], a[0,1]); } } Среди приведенных кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания приведет к корректной программе, выводящей на консоль значения: 1, 2, 3, 4
(1) {3,2}, {4,1}
(2) {3,4}, {2,1}
(3) 3, 4, 2, 1
(4) {3,B},{2,1}
В теле метода Main() содержится следующий код: int[,] A, B; A = new int[2, 2]; B = new int[2, 3] { { 11, 12, 13 }, { 14, 15, 16 } }; A = B; B[0,1] = ++B[1, 0]; System.Console.Write("{0} {1} ", A[0, 0], A[0, 1]); System.Console.Write("{0} {1} ", A[1, 0], A[1, 1]); Укажите результат вывода на консоль после выполнения метода Main():
(1) 11 12 13 14
(2) 11 12 14 15
(3) 11 12 15 15
(4) 11 15 15 15
Проанализируйте программу и определите результат вывода. class Program { public static void Main() { int[][] A=new int[2][] {new int[]{}, new int[]{2,3}}; System.Console.Write(A.Length + A[0].Length + A[1].Length); } }
(1) метод Main не выполняется: программа содержит ошибки
(2) 6
(3) 5
(4) 4
Из приведенного перечня операций укажите все операции, определенные для строк:
(1) ++
(2) +=
(3) <=
(4) <
(5) !=
В теле метода Main() содержится следующий код: string S = null; int B = 5; S = S + 20 + B; System.Console.Write(S); Укажите результат вывода на консоль после выполнения метода Main():
(1) 25
(2) 20B
(3) 205
(4) 20+B
В классе Program определен единственный метод, имеющий следующий код: public static void Main(string[] par) { char[] sep = new char[]{':'}; string[] s = par[0].Split(sep); System.Console.Write(s.Length); } После трансляции исполняемый модуль программы сохранен в файле C:\P.EXE. C:\P.EXE 10:20::30 Укажите результат вывода на консоль после запуска программы из командной строки:
(1) 2
(2) 3
(3) 4
(4) 5
Для преобразования строки ГОД в строку ДОГ разработан приведенный ниже исходный код, который размещен в методе Main(): string str = "ГОД"; char[] s = str.ToCharArray(); System.Array.Reverse(s); str = ______ ; System.Console.Write(str); Среди приведенных кодов укажите код, подстановка которого вместо знаков подчеркивания приведет к корректной программе, решающей эту задачу
(1) s
(2) new string(s)
(3) s.ToString()
(4) new s
Требуется сформировать строку путем объединения двух исходных строк. Исходные строки объединяются в порядке возрастания по алфавиту. Для решения этой задачи разработан приведенный ниже исходный код, который размещен в методе Main(): string[]s = new string[2]; string str; bool p; s[0]=System.Console.ReadLine(); s[1]=System.Console.ReadLine(); p = ____________ ; str = p? s[0]+s[1] : s[1]+s[0]; Среди приведенных кодов укажите код, подстановка которого вместо знаков подчеркивания приведет к корректной программе, решающей эту задачу.
(1) s[0] < s[1]
(2) s[1].CompareTo(s[0]) < 0
(3) s[0].CompareTo(s[0]) > 0
(4) s[1].CompareTo(s[0]) > 0
Оператор goto default используется
(1) для возврата в метод Main
(2) для завершения выполнения программы
(3) для перехода в операторе switch на ветвь по умолчанию
(4) для возврата в точку вызова
(5) для перехода на оператор с меткой default, расположенный в другом методе
Приведенный фрагмент исходного кода размещен в теле метода Main и разрабатывался для вывода сообщения о том, к какой категории относиться день недели, введенный пользователем: string day, msg; day = System.Console.ReadLine(); switch (day) { case "6": case "Суббота": msg = "Выходной"; break; case "7": case "Воскресенье": msg = "Выходной"; break; default: msg = "Рабочий"; } System.Console.WriteLine(msg); Трансляция программы завершена неудачно. Из приведенных высказываний укажите высказывание, которое раскрывает причину некорректности программы:
(1) строка не может использоваться в качестве переключателя
(2) ветвь должна иметь только один маркер
(3) начальное значение переменной msg не определено
(4) в ветви с маркером default должен быть указан оператор break
(5) не выделена память под хранение значения переменной msg
В теле метода Main() содержится следующий код: int[] a = new int[] { 3, 7, 1 }; int s = 0, i; for (i = 0; i <= a.Length; i++) { if (a[i] % 2 == 0) break; s += a[i]; } System.Console.WriteLine(s); Укажите результат вывода на консоль после выполнения метода Main():
(1) 0
(2) 11
(3) 10
(4) при выполнении программы фиксируется исключение: нарушение границ массива
В теле метода Main() содержится следующий код: int a = int.Parse(System.Console.ReadLine()); if (a > 9) System.Console.Write("Как дела? "); if (a < 12) System.Console.Write("Хорошо! "); else System.Console.Write("Плохо! "); Укажите из приведенных ниже вариантов вводимых данных все варианты, при которых будет выведено сообщение: "Как дела? Плохо!"
(1) 11
(2) 12
(3) 8
(4) 9
(5) 15
Проанализируйте приведенный код, определенный в методе Main(), и укажите результат вывода, если после запуска программы пользователь набрал символ 1 и нажал клавишу ENTER. double X; string msg; X = double.Parse(System.Console.ReadLine()); if (X < 1) msg = "Слева"; else if (X > 1 && X < 4) msg = "Внутри"; else msg = "Справа"; System.Console.WriteLine(msg);
(1) Слева
(2) Внутри
(3) ВнутриСлева
(4) Справа
(5) ВнутриСправа
Укажите все истинные высказывания из приведенного перечня:

Процедура, определяемая как метод класса,

(1) должна вызываться с помощью оператора вызова Call
(2) должна содержать в заголовке в качестве типа возвращаемого значения тип int
(3) может не иметь ни одного параметра
(4) может иметь в заголовке параметры с модификатором ref
(5) должна иметь в имени префикс Procedure
Укажите все истинные высказывания из приведенного перечня:

При вызове метода на месте параметра - одномерного массива чисел типа long c модификатором params, может быть указан аргумент, представляющий собой

(1) одномерный массив типа long
(2) одномерный массив типа int
(3) список выражений типа int
(4) список констант типа int
(5) список выражений типа long
Приведенные ниже процедуры и функции определены как методы одного класса. public static void Add(out string s) { string word = "Солнце!"; s = s + word +"День чудесный!"; } public static void Main() { string s = "Мороз!"; Add(out s); System.Console.Write(s); } Укажите результат вывода на консоль после выполнения программы.
(1) Мороз! Солнце! День чудесный!
(2) Солнце!День чудесный!
(3) Мороз! День чудесный!
(4) метод Main не выполняется: программа содержит ошибки
Приведенные ниже процедуры и функции определены как методы одного класса. static void Print(int[] a) { for(int i=0; i<a.Length; i++) System.Console.Write("{0} ",a[i]); } static int[] F(int[] a, ref int[] b) { b = a; System.Array.Reverse(a); return b; } static void Main() { int[] a = new int[] { 3,5,7 }; int[] b = new int[] { 3,5,7 }; F(a,ref b); Print( ______ ); } Среди приведенных кодов укажите все коды, подстановка каждого из которых вместо знаков подчеркивания приведет к корректной программе, выводящей на консоль значения 7 5 3
(1) a
(2) b
(3) F(a,ref b)
(4) F(a,out b)
Приведенные ниже процедуры и функции определены как методы одного класса. static double F(int a, int b) { return a + b; } //Вариант 1 static double F(double a, double b) { return a + b; } //Вариант 2 static double F(short a, double b) { return a + b; } //Вариант 3 static double F(short a, int b) { return a + b; } //Вариант 4 static void Main() { short b = 5; System.Console.Write(F(3, b)); } Укажите истинное утверждение, относящееся к вызову функции F:
(1) будет вызвана функция: Вариант 1
(2) будет вызвана функция: Вариант 2
(3) будет вызвана функция: Вариант 3
(4) будет вызвана функция: Вариант 4
(5) нет ни одного варианта реализации функции F, который соответствует вызову