Главная /
Основы программирования на C#
Основы программирования на C# - ответы на тесты Интуит
В учебном курсе представлено полное описание языка C#. Подробно рассматриваются классы, структуры, интерфейсы, делегаты. Особое внимание уделяется наследованию и универсальным классам.
Список вопросов:
- # На каких языках программирования можно работать в Visual Studio .Net?
- # Каркас Framework .Net это:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Спецификации CLS задают:
- # Сборщик мусора Garbage Collector это:
- # JIT - это:
- # Проект на C#:
- # Исполнительная среда CLR:
- # Библиотека FCL - это:
- # Пространство имен – это:
- # Отметьте верные высказывания:
- # Отметьте верное утверждение:
- # Какие программы корректны по отношению к своим спецификациям?
- # Для программы, вычисляющей сумму первых n элементов массива: S=A[0]; k=0; while(k !=(n-1)) { k++; S+=A[k];} инвариантом цикла являются
- # Для программы, вычисляющей сумму первых n элементов массива S=A[0]; k=0; while(k !=(n-1)) { k++; S+=A[k];} подходящими инвариантами цикла являются
- # Отметьте истинное высказывание:
- # Отметьте истинное высказывание:
- # Отметьте истинное высказывание:
- # Постусловие метода
- # Предусловие метода:
- # Методы P и Q называются взаимно рекурсивными:
- # Каждое выполнение тела цикла:
- # Правда ли, что:
- # Правда ли, что:
- # Правда ли, что:
- # Отметьте правильные объявления:
- # Отметьте правильные объявления:
- # Отметьте истинные высказывания:
- # Отметьте истинное высказывание:
- # Отметьте истинные высказывания
- # Какая из процедур вызовет ошибку периода трансляции?
- # Какие из процедур корректно вычислят сумму переданного им массива int?
- # Отметьте вызовы процедур, в которых переменная sum получит значение 21. int sum =0; int[] mas = {7, 6, 8}; object[] mas2 = {3, 9, 9}; Описания процедур:public static void L1_V1_Q31(int[] A, int S) { S=0; for(int i =0; i< A.Length; i++) S+=A[i]; } public static void L1_V1_Q32(ref int[] A, ref int S) { S=0; for(int i =0; i< A.Length; i++) S+=A[i]; } public static int L1_V1_Q34(object[] A) { int S=0; foreach(int i in A) S+=(int)i; return(S); }
- # Размерность массива определяется:
- # Массив массивов – это массив
- # При инициализации массива задание конструктора обязательно
- # Отметьте верные утверждения:
- # Правда ли, что:
- # Правда ли, что:
- # Пусть x – объект класса int[]. В вызове x.M роль M может играть:
- # Пусть массив x принадлежит классу double[][]. В вызове x.M роль M может играть:
- # К статическим свойствам и методам класса Array относятся:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Пусть процедура ItWorks имеет следующий заголовок: public void ItWorks(object[] A) .Какой массив может быть передан ей в качестве аргумента?
- # Пусть процедура ItWorks имеет следующий заголовок: public void ItWorks(Array A). Какой массив может быть передан ей в качестве аргумента?
- # Пусть процедура ItWorks имеет следующий заголовок: public void ItWorks(int[] A). Какой массив может быть передан ей в качестве аргумента?
- # Три массива: <int[] ar1 = new int[5]; double[] ar2 ={5.5, 6.6, 7.7}; int[,] ar3 = new Int32[3,4]; > принадлежат
- # Статические методы класса Array
- # Для того чтобы было возможным преобразование массива с элементами класса S в массив с элементами класса T, необходимо
- # Правда ли, что:
- # Правда ли, что:
- # Правда ли, что:
- # Отметьте правильные объявления:
- # Даны объявления: char ch = 'A'; char[] ar ={'B', 'C', 'D'}, ar1= new char[3]; Отметьте синтаксически корректные операторы:
- # Отметьте правильные объявления:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Выберите правильные варианты ответа. Переменная класса char[] может вызывать следующие методы и свойства
- # Даны объявления: string s = "Hello, Dolly!"; const int size =15; char[] c0 = new char[size], c1= new char[size]; char[] c2 = new char[size], c3= new char[size]; char[] c4 = new char[size]; Группа операторов выполняется после этих объявлений. Отметьте операторы, не приводящие к ошибке на этапе выполнения:
- # Для типа char существует
- # Для строки s типа string запись s[i]
- # В каких фрагментах не возникнет ошибка?
- # Правда ли, что:
- # Правда ли, что:
- # Правда ли, что:
- # Объект класса string можно создать:
- # Объект класса string можно создать:
- # Отметьте фрагменты, в которых не возникнут ошибки при компиляции и выполнении:
- # Отметьте правильные высказывания:
- # Отметьте правильное высказывание:
- # Отметьте правильное высказывание:
- # Какие высказывания справедливы для класса StringBuilder?
- # Какие высказывания справедливы для класса StringBuilder?
- # Какие высказывания справедливы для класса StringBuilder?
- # Изменить значение строки класса string
- # Строки класса StringBuilder создаются тогда, когда
- # Правда ли, что:
- # Правда ли, что:
- # Правда ли, что:
- # Отметьте правильные высказывания:
- # Словом будем называть непустую последовательность букв кириллицы, обрамленную белыми пробелами. Какой образец распознает слова, соответствующие этому определению?
- # Отметьте правильные высказывания:
- # Отметьте правильные высказывания
- # Какие из трех образцов: @"\s*[а-я]+\s", @"[А-Яа-я]+", @"\s[А-Яа-я]+\s" включат слово "папа" в результат найденного соответствия при поиске в строке "папа мама и я":
- # Чтобы получить объект Match можно:
- # Какие слова принадлежат языку, заданному регулярным выражением: @“[A-Za-z]\w+=\w+[\+|\-|\*]\w+”
- # Какие слова принадлежат языку, заданному регулярным выражением: @ “[a-zA-Z]\w*\s*=\s*\w+(\s*\+\s*\w+)+”
- # Какие слова принадлежат языку, заданному регулярным выражением: @“\w\s=\s\w+(\+|\-\w+)+”?
- # Для выделения из текста подстроки, в которой x и y разделены знаком операции + или -, следует использовать шаблон:
- # Слова языка LD задаются непустой последовательностью целых чисел, разделенных знаками арифметических операций, например 155/33+17-5*23+7. Какое регулярное выражение описывает этот язык?
- # Класс Regex имеет
- # Для выделения из текста подстроки, состоящей из трех символов, в которой первый и третий символы являются буквами т или к, а второй символ произвольной буквой кириллицы в нижнем регистре, следует использовать шаблон:
- # Слова языка LV задаются непустой последовательностью однобуквенных имен в латинице, разделенных знаками арифметических операций, например x/z+c-v*b+n. Какое регулярное выражение описывает этот язык?
- # Правда ли, что:
- # Класс имеет:
- # Объекты класса Rational могут быть созданы в клиентском классе
- # Тело класса может содержать описание:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Метод-Свойство класса
- # Поля класса:
- # В Visual Studio 2005 (Framework 2.0) для класса разрешается определять:
- # При определении собственных классов можно задать:
- # Закрытые методы класса
- # Правда ли, что:
- # Правда ли, что:
- # Правда ли, что:
- # Какие утверждения справедливы для развернутых и ссылочных типов
- # Особенностями структур являются
- # Какие утверждения справедливы относительно взаимных преобразований структур в классы
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания
- # Отметьте истинные высказывания
- # При создании объектов перечислений
- # Даны объявления структур: Point pt1 = new Point(3,5),pt2; Size sz1 = new Size(7,10), sz2; Какие операторы присваивания ошибочны?
- # Перечисление – это
- # Базовый класс для перечисления
- # Дано перечисление enum TC {red, blue, yellow} и три переменных c1, c2, c3 этого класса. В результате присваиваний: с1 = TC.yellow; c2 = TC.blue; c3 = c1 | c2; переменная с3 получит значение
- # Правда ли, что:
- # Дано перечисление enum TC {red, blue, yellow} и три переменных c1, c2, c3 этого класса. В результате присваиваний: с1 = TC.yellow; c2 = TC.blue; c3 = c1 | c2; эти переменные получат следующие значения базового типа:
- # Отметьте верные утверждения.
- # Для классов клиентов и поставщиков справедливы утверждения:
- # Для классов родителей и потомков справедливо следующее утверждение:
- # Для понятия «полиморфизм» справедливы следующие утверждения
- # Отметьте истинное высказывание:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # В родительском классе описан метод public virtual void M(int x) {}. Какое объявление в классе потомке вызовет ошибку на этапе компиляции, не допускающую выполнения проекта?
- # В родительском классе описан метод public virtual void M(int x) {}. Какое объявление в классе потомке вызовет ошибку на этапе компиляции?
- # В родительском классе описан метод public void M(int x) {}. Какие объявления в классе потомке вызовут ошибки или предупреждения на этапе компиляции?
- # Если метод родительского класса объявлен с атрибутом virtual, то потомок класса:
- # Класс А является клиентом класса B
- # Правда ли, что:
- # Ключевое слово interface в языке C# задает описание:
- # Пусть задано описание интерфейсов: interface IN{string M(string s);} interface IP{string M(string s); string M1(int s);} interface IQ{int M(int s);}. Какие из объявлений классов содержат ошибки
- # Пусть задано описание интерфейса и класса: interface IP{string M(string s); string M1(int s);} public class C1:IP{string IP.M(string s){return (s+s);} string IP.M1(int x){return x.ToString();}public int M (int s) { return (s++);}}. Какие из объявлений в клиентском классе выполнимы
- # Отметьте истинные высказывания
- # Отметьте истинные высказывания
- # Отметьте истинные высказывания
- # Интерфейс ISerializable
- # Класс с атрибутом Serializable
- # При наследовании интерфейсов
- # Глубокое клонирование
- # Интерфейс отличается от абстрактного класса тем, что:
- # Правда ли, что:
- # Правда ли, что:
- # Правда ли, что:
- # Проект – это:
- # Начальный Windows-проект содержит:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Решение – это:
- # Для создания XML-отчета для проекта необходимо:
- # Если вызывается метод объекта класса А, то вызываемый метод:
- # Тег <summary>, заданный для метода М:
- # XML-отчет:
- # Выберите верное утверждение:
- # Отметьте верные утверждение:
- # Отметьте верные высказывания:
- # Отметьте корректные объявления делегата – функционального класса:
- # Дано объявление делегата: public delegate double D (double x); Какие объявления его экземпляров будут корректны в определенном контексте?
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Функция обратного вызова – это:
- # Реализация экземпляра делегата в виде метода-свойства позволяет:
- # Какие методы делегатов являются статическими?
- # Экземпляр делегата следует рассматривать как:
- # Делегат в языке C# задает:
- # При построении программной системы методом раскрутки
- # Правда ли, что:
- # Правда ли, что:
- # Правда ли, что:
- # Обработчик события
- # Объекты одного класса
- # Процедура, в которой вызывается событие
- # Отметьте истинные высказывания
- # Отметьте истинные высказывания
- # Отметьте истинные высказывания
- # Объявление события в классе может представлять собой:
- # Класс EventHandler
- # Все аргументы события принадлежат
- # Сообщение о событии получает:
- # Зажечь событие – это значит:
- # Для событий, допустимых в каркасе Framework .Net, к делегатам предъявляются следующие ограничения
- # Правда ли, что:
- # Правда ли, что:
- # Правда ли, что:
- # Универсальный класс – это:
- # Для ограниченной универсальности справедливы следующие утверждения:
- # Какие утверждения справедливы при описании взаимосвязи наследования и универсальности?
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Отметьте корректные высказывания
- # Какие фрагменты кода корректны в предположении, что используемые родительские классы и интерфейсы определены корректно?
- # В каких фрагментах кода возникнут ошибки (предупреждения) на этапе компиляции?
- # В каких строках кода возникнут ошибки (предупреждения) на этапе трансляции?
- # Для ограничения универсальности
- # В C# универсальными могут быть:
- # На основе универсального класса можно создавать:
- # Правда ли, что:
- # Отметьте верное утверждение:
- # Правда ли, что:
- # Классы Debug и Trace:
- # Блоки catch
- # Класс Exception
- # Отметьте истинные утверждения:
- # Отметьте истинные утверждения:
- # Отметьте истинные высказывания:
- # Оператор throw
- # Атрибут условной компиляции Conditional:
- # Метод Assert
- # Отладка позволяет
- # Если метод класса снабжен атрибутом Conditional, то метод
- # В теле метода может быть
- # Правда ли, что:
- # Правда ли, что:
- # Правда ли, что:
- # Объект класса Graphics можно получить
- # Объект, задающий кисть, можно получить:
- # При наследовании форм:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Классы Control, Form и ListBox связаны следующими отношениями наследования
- # Элемент управления ListBox
- # Для форм справедливы следующие утверждения:
- # Меню в формах:
- # Можно создать кисть класса:
- # Класс Menu имеет следующих потомков
- # Правда ли, что:
- # Правда ли, что:
- # Правда ли, что:
- # К значимым типам языка C# относятся:
- # К ссылочным типам языка C# относятся:
- # К типам, определяемым пользователем языка C#, относятся:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Цель и источник согласованы по присваиванию, если
- # Если формальный аргумент метода объявлен как объект класса T, то фактический аргумент может быть:
- # Если присваивание x= y; допустимо, то обратное присваивание y=x;
- # Операции упаковки и распаковки (boxing, unboxing)
- # Преобразование к типу object
- # Класс object - это
- # Укажите истинные высказывания:
- # Правда ли, что:
- # Правда ли, что:
- # Преобразования между значимыми и ссылочными типами
- # Явное преобразование типа может быть выполнено:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # В проверяемом (checked) блоке проверяется корректность
- # Охраняемый try-блок
- # При включенной опции компилятора /checked проверка корректности преобразований типов выполняется:
- # Необходимость в преобразованиях может возникать:
- # К неявным преобразованиям относятся:
- # Класс Exception
- # Правда ли, что:
- # Выберите верные высказывания:
- # Отметьте верные утверждения:
- # Отметьте правильные объявления переменной:
- # Отметьте истинные высказывания:
- # Отметьте правильные объявления внутри метода:
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Отметьте правильные объявления константы
- # Какие из выражений являются правильно построенными константами
- # Отметьте правильные объявления константы
- # При объявлении переменной
- # Имя локальной переменной может совпадать:
- # Передавать и получать информацию методу можно
- # Отметьте верные утверждения:
- # Отметьте верное:
- # Верно, что приоритет операций выше:
- # Верно, что приоритет операций выше:
- # Верно, что приоритет операций выше:
- # В результате объявления: int x=1,y=2,z=((x|y + ++x)>5)? x|y : ++x +2 ; переменные x,y,z получат значения
- # В результате объявления: int x=2,y=5,z=((x|y +x++)>=9) ? x|y : ++x +2 ; переменные x, y, z получат значения
- # В результате объявления: int x=2, y=3, z= ((x|--y +y)>5) ? x|y : ++x +2 ; переменные x, y, z получат значения
- # Отметьте истинные высказывания:
- # Отметьте истинное высказывание:
- # Отметьте истинное высказывание:
- # Под перегруженной операцией понимается операция:
- # Побочным эффектом могут обладать:
- # Ключевое слово new в зависимости от контекста играет роль:
- # Правда ли, что:
- # Правда ли, что:
- # Правда ли, что:
- # Операциями присваивания языка C# являются:
- # В классе Random определен:
- # В классе Math определены методы (функции):
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания:
- # Отметьте истинное высказывание:
- # В каком фрагменте возникнет ошибка:
- # В каких фрагментах возникнет ошибка:
- # В каких фрагментах возникнет ошибка:
- # В языке C# присваивание:
- # При ссылочном присваивании:
- # К специальным случаям присваивания относится:
- # Верно ли, что:
- # Правда ли, что:
- # Отметьте верные утверждения:
- # Чему будет равно x в результате выполнения следующего фрагмента: int x=5; for(int i =1; i<5; i++); x+=5;
- # Чему будет равно x в результате выполнения следующего фрагмента int a=2, b=3,c=5, x=0; if(a>b)if(c>a)if(c>a+b) x=a+b+c; else x=7;else x=12;
- # Тело цикла for (int i = 1, j=-10; j<10; i--) j++;
- # Отметьте истинное высказывание:
- # Отметьте истинное высказывание:
- # Отметьте истинные высказывания:
- # В каких фрагментах возникнет ошибка компиляции:
- # В каких фрагментах возникнет ошибка:
- # В каких фрагментах возникнет ошибка:
- # Оператор return
- # Операторами цикла в C# являются:
- # Отметьте верное утверждение:
- # Правда ли, что:
- # Правда ли, что:
- # Метод можно описать на уровне:
- # Чем отличаются процедуры от функций:
- # При вызове аргумента "по значению":
- # Отметьте истинные высказывания:
- # Отметьте истинные высказывания
- # В каких вызовах возникнет ошибка, если задано описание int x=1; int z=0; int p(int x, out int y){…}
- # Функция с побочным эффектом:
- # Какие высказывания верны для полей класса:
- # Метод является:
- # Формальный аргумент метода должен сопровождаться ключевым словом:
- # Почему при ОО-стиле программирования у методов класса мало аргументов:
- # Правда ли, что:
- # Правда ли, что:
- # Отметьте верные утверждения: