игра брюс 2048
Главная / Программирование / Основы программирования на С# 3.0: ядро языка - Visual Studio 2008 / Тест 7

Основы программирования на С# 3.0: ядро языка - Visual Studio 2008 - тест 7

Упражнение 1:
Номер 1
Множество возможных значений типа char - это:

Ответ:

 (1) множество строчных и заглавных букв в латинице 

 (2) множество цифр и букв, как в латинице, так и в кириллице 

 (3) множество из 256 различных символов в кодировке ASCII 

 (4) множество из math различных символов в кодировке Unicode 


Номер 2
Отметьте истинные высказывания:

Ответ:

 (1) тип char отображается в тип Char библиотеки FCL 

 (2) каждому символу типа char однозначно соответствует код - целое число из фиксированного диапазона 

 (3) код символа задается числом, которое случайным образом выбирается при записи символа в память компьютера 


Номер 3
Укажите истинные высказывания:

Ответ:

 (1) зная код символа, можно однозначно определить сам символ 

 (2) зная символ, можно однозначно определить его код 

 (3) для кириллицы кодировка символов алфавита является плотной без всяких исключений 

 (4) для кириллицы кодировка символов алфавита является плотной за исключением кодировки буквы "ё" 


Упражнение 2:
Номер 1
Отметьте корректные объявления:

Ответ:

 (1) char a = new char("a")  

 (2) char b = "b" 

 (3) Char[] c = new char[5] 

 (4) char[] d = {'a','b','c','d'} 


Номер 2
Для фрагмента программы:
  
  string s = "да"; 
   int x = 0; 
  if (s[0] >= 'А' && s[0] <= 'Я' &&  char.IsLetterOrDigit(s[1])) x = 1; 
   else if (s[0] >= 'а' && s[0] <= 'я' && char.IsLetterOrDigit(s[1])) x = 2; 
   else if (s[0] >= 'A' && s[0] <= 'Z' && char.IsLetterOrDigit(s[1])) x = 3; 
   else x = 4;
  
  какое значение получит переменная x:
  

Ответ:

 (1)

 (2)

 (3)

 (4)


Номер 3
Для фрагмента программы:
  
   string s = "Yes"; 
    int x = 0; 
    if (s[0] >= 'А' && s[0] <= 'Я' &&  char.IsLetterOrDigit(s[1])) x = 1; 
    else if (s[0] >= 'а' && s[0] <= 'я' && char.IsLetterOrDigit(s[1])) x = 2; 
    else if (s[0] >= 'A' && s[0] <= 'Z' && char.IsLetterOrDigit(s[1])) x = 3; 
   else x = 4;
  
  какое значение получит переменная x:
  

Ответ:

 (1)

 (2)

 (3)

 (4)


Упражнение 3:
Номер 1
Константу типа char можно задавать:

Ответ:

 (1) символом, заключенным в двойные кавычки 

 (2) символом, заключенным в одинарные кавычки 

 (3) escape - последовательностью, начинающейся с символа обратной косой черты "\" 

 (4) Unicode - последовательностью, задающей Unicode код символа 


Номер 2
Укажите корректные объявления: 

Ответ:

 (1) string q = "2 + 2 = 5" 

 (2) string q1 = 'Q' 

 (3) string q2 = 'Q'.ToString() 

 (4) string q3 = new string() 

 (5) char[] syms = "string".ToCharArray() 


Номер 3
В результате выполнения фрагмента кода
  
  int z = 0; 
  string s1 = "ABC", s2 = "AB" + 'C'.ToString(), s3 = s2;
  if(s1 != s2) z = 1;
  else if(s1 != s3) z = 2;
  else if (s1.Length == s3.Length) z = 3;
  else z = 4; 
  
  переменная z получит значение:
  

Ответ:

 (1)

 (2)

 (3)

 (4)


Упражнение 4:
Номер 1
Над строками определены операции:

Ответ:

 (1) "+" 

 (2) "*" 

 (3) ">" 

 (4) "!=" 


Номер 2
Среди конструкторов класса string существует:

Ответ:

 (1) конструктор без аргументов 

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

 (3) конструктор, которому передается символ и число его повторений в создаваемой строке 


Номер 3
Укажите истинные высказывания для переменных класса string:

Ответ:

 (1) эквивалентность строк (s ==s1) означает совпадение ссылок s и s1 

 (2) эквивалентность строк (s ==s1) означает совпадение значений s и s1 

 (3) операция (s+s1) определена только над строками, содержащими числа 

 (4) нельзя получить i-й символ строки, используя операцию взятия индекса (char c = s[i]);  

 (5) нельзя заменить i-й символ строки, используя операцию взятия индекса ( s[i] = 'C';);  


Упражнение 5:
Номер 1
Какое утверждение верно для констант  'C',  "C", @"C" :

Ответ:

 (1) все три константы принадлежат разным типам 

 (2) все три константы принадлежат одному типу 

 (3) первая константа принадлежит типу char, вторая и третья - типу string 

 (4) первая константа принадлежит типу char, вторая - типу string, третья - StringBuilder 


Номер 2
Класс называется неизменяемым, если:

Ответ:

 (1) в класс нельзя добавлять новые методы 

 (2) в класс нельзя добавлять новые поля 

 (3) объекты класса не могут изменять значения, полученные при их создании 

 (4) имя класса нельзя изменить 


Номер 3
Какие утверждения справедливы для @-констант:

Ответ:

 (1) @-константы принадлежат типу string 

 (2) каждый символ @-константы задает непосредствено сам символ за одним исключением - символа кавычки 

 (3) любой символ кодировки Unicode может быть задан в @-константе 


Упражнение 6:
Номер 1
Изменить значение объекта класса string:

Ответ:

 (1) можно, используя статические методы класса 

 (2) можно, используя динамические методы класса 

 (3) невозможно 


Номер 2
Укажите, как осуществляются преобразования между классами string и StringBuilder:

Ответ:

 (1) для преобразования строки класса StringBuilder в строку класса string, следует вызвать метод ToString(), возвращающий строку класса string 

 (2) для преобразования строки класса string в строку класса StringBuilder, следует вызвать конструктор класса StringBuilder, передав ему строку string в качестве аргумента 

 (3) для преобразования строки класса StringBuilder в строку класса string, следует вызвать конструктор класса string, передав ему строку StringBuilder в качестве аргумента 

 (4) для преобразования строки класса string в строку класса StringBuilder, следует вызвать метод ToStringBuilder(), возвращающий строку класса StringBuilder 


Номер 3
Какие утверждения являются справедливыми?  Метод Format:

Ответ:

 (1) позволяет форматировать строки string 

 (2) является перегруженным 

 (3) имеет произвольное число фактических аргументов 

 (4) позволяет изменить тип строки 

 (5) первым аргументом метода является строка, содержащая форматы 


Упражнение 7:
Номер 1
Укажите утверждения, истинные для класса StringBuilder:

Ответ:

 (1) класс StringBuilder является изменяемым классом 

 (2) методы Insert, Replace этого класса реализованы как процедуры в отличие от аналогичных методов класса string, реализованных как функции, возвращающие новый объект 

 (3) для строк класса StringBuilder, также как и для класса string, нельзя заменить i-й символ строки, используя операцию взятия индекса ( s[i] = 'C';)  


Номер 2
В результате выполнения фрагмента кода
  
  string f = "{0:P} от суммы {1, 10:x} составляют {2, 10:F}"; 
  double p = 0.33, x =12355; 
  string s1 = string.Format(f, p, x, p * x);
  
  переменная s1 получит значение:
  

Ответ:

 (1) "33% от суммы 12 355р. составляют 4077,15" 

 (2) "33,00% от суммы 12 355,00р. составляют 4077,15" 

 (3) "0,33% от суммы 12 355,00р. составляют 40,77" 


Номер 3
Какое высказывание справедливо для класса StringBuilder? 

Ответ:

 (1) существует неявное преобразование строки string в строку StringBuilder;  

 (2) у класса StringBuilder нет конструктора без параметров 

 (3) у класса StringBuilder нет операции "+" - конкатенации 

 (4) класс StringBuilder относится к неизменяемым классам 




Главная / Программирование / Основы программирования на С# 3.0: ядро языка - Visual Studio 2008 / Тест 7