Результаты прохождения теста C# основы пользователем orchikovroman

Результат прохождения теста "C# основы" - Не пройден

+78

  • Кто проходил: orchikovroman
  • Дата прохождения: 15.05.2019
Укажите корректные примеры использования ключевого слова var для автоматического вывода типов:
Ваши ответы
var myINt = 1;
Объяснение:

Смотрим по правой части где явно можно вывести тип

Что будет выведено на экран?
class Test  
{ 
   static void Main(string[] args)  
   { 
       int i = 1; 
       Console.WriteLine("i = {0}", i++); 
   } 
} 
Ваши ответы
i = 1
Среди перечисленных конструкций C# укажите объявление свойства
Ваши ответы
string Name {get{return “Name”;}}
Укажите ошибки в коде:
using Systеm; 
nаmеsрасе Q 
{ 
   сlаss Nаmе 
   { 
   #rеgiоn Cоnstruсtоr 
       рubliс Nаmе(string nаmе) 
       { 
           this.Nаmе = nаmе; 
       } 
   #еndrеgiоn 
 
   #rеgiоn Рrореrtiеs 
/*1*/   рubliс string Nаmе 
       { 
           рrivаtе sеt; 
           gеt; 
       } 
   #еndrеgiоn 
 
   #rеgiоn Меthоds 
       stаtiс vоid Маin(string[] аrgs) 
       { 
/*2*/            Nаmе n = nеw Nаmе("Hеlо Wrоld");     
/*3*/            n.Disроsе(); // освобождаем память. 
       } 
   #еndrеgiоn 
   } 
} 
Ваши ответы
Строка /*1*/ Класс Name не может содержать свойство Name
Объяснение:

/**/ - Вполне себе комментарии
Hello World является строковым выражением, его синтаксис не проверяется=)
Класс не может содержать членов с именем, совпадающим с именем самого класса.
Dispose не объявлен.

Что напечатает следующий код:
class MyClass 
   { 
       static void Main() 
       { 
           int a = 1, b = 2; 
           change(ref a, ref b); 
           Console.WriteLine("a=" + a + ", b=" + b); 
           Console.ReadLine(); 
       } 
 
       private static void change(ref int a, ref int b) 
       { 
           int c = a; 
           a = b; 
           b = c; 
       } 
   } 
Ваши ответы
a=2, b=1
Что верно по отношению к данному фрагменту кода:
for (;;) 
{ 
  Console.WriteLine("test"); 
} 
Ваши ответы
Код скомпилируется, но тело цикла не выполнится ни разу
Что выведет на экран данный код?
class Program 
{ 
   static void Main(string[] args) 
   { 
       Console.WriteLine(Foo("Original string")); 
   } 
 
   public static string Foo(string str) 
   { 
       try 
       { 
           return str; 
       } 
       finally 
       { 
           Console.WriteLine("In finally"); 
           str = "Somewhere in finally"; 
       } 
   } 
} 
Ваши ответы
In finally
Somewhere in finally
Что выведет данный код?
static void Main(string[] args) 
{ 
   string s; 
   { 
       int s = 10; 
       Console.WriteLine(s); 
   } 
} 
Ваши ответы
10
Отметьте все верные утверждения о классе SomeClass:
internal sealed class SomeClass 
{ 
   public void SomeMethod() 
   {  
   } 
} 
Ваши ответы
SomeClass может использоваться внешними сборками
Объяснение:

1) SomeClass неявно наследует System.Object 2) у SomeClass не может быть наследников (модификатор sealed означает, что класс не может порождать наследников) 3) SomeClass доступен для использования только внутри сборки, в которой он определён (модификатор internal определяет класс, как внутренний) 4) явное определение конструктора без параметров для ссылочного типа необязательно - компилятор создаёт его, если конструктор не определён явно 5) SomeClass - ссылочный тип, т.к. унаследован от object

C# является регистрозависимым языком.
Ваши ответы
Нет
Что напечатает данный код:
class Test { 
  static void increment(int p) 
  { 
    ++p; 
  } 
  static void Main( )  
  { 
    int x = 8; 
    increment(x); 
    Console.WriteLine(x++); 
  } 
} 
Ваши ответы
Код не скомпилируется
Объяснение:

Параметр x передается в метод по значению. Сначала произойдет вывод значения, а потом инкремент, так как в данном случае используется постфиксный оператор

Каков будет результат при выполнении следующего кода:
public abstract class A 
{ 
   public virtual string Print() { return "A"; } 
} 
 
public class B : A 
{ 
   public override string Print() { return "B"; } 
} 
 
public class C : B 
{ 
   public new string Print() { return "C"; } 
} 
A ac = new C(); 
Console.WriteLine(ac.Print()); 
Ваши ответы
Ошибка компиляции
Что напечатает следующий код:
static bool Method1() 
{ 
   Console.WriteLine("in Method1"); 
   return false; 
} 
static bool Method2() 
{ 
   Console.WriteLine("in Method2"); 
   return true; 
} 
static void Main(string[] args) 
{ 
   if (Method1() & Method2()) 
   { 
      Console.WriteLine("inside if"); 
   } 
} 
Ваши ответы
in Method1
in Method2
inside if
Объяснение:

Оператор & всегда вычисляет значение обоих операндов

Какое значение будет выведено на консоль в результате выполнения программы?
struct A { 
       public virtual void foo() { 
           Console.WriteLine("A"); 
       } 
   } 
 
   struct B : A {  
       public virtual override void foo() { 
           Console.WriteLine("B"); 
       } 
   } 
 
   class Program 
   { 
       static void Main(string[] args) { 
           A v = new B(); 
           v.foo(); 
       } 
   } 
Ваши ответы
A
Объяснение:

Программа не компилируется по двум причинам: 1. Структуры не могут иметь виртуальных методов; 2. Структуры могут быть унаследованы только от интерфейсов.

Что выведет на экран код:
static void Main() 
{ 
   if (false) 
   { 
       int i = 1; 
   } 
   int i = 2; 
   Console.WriteLine(i); 
} 
Ваши ответы
0