игра брюс 2048
Главная / Программирование / C# для школьников / Тест 4

C# для школьников - тест 4

Упражнение 1:
Номер 1
Отметьте верные утверждения:

Ответ:

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

 (2) метод позволяет решать однотипные задачи 

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

 (4) методы могут принадлежать как классу, так и пространству имен 

 (5) пусть в классе Pupil (Ученик) есть метод ShowInfo (вывести информацию об ученике). Для того, чтобы вызвать этот метод, сначала нужно создать экземпляр класса Pupil


Номер 2
Отметьте верные утверждения:

Ответ:

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

 (2) метод – это пошаговые инструкции, задающие порядок выполнения операций 

 (3) комментарии нужны для пояснения кода программы 

 (4) метод должен быть вызван только в том классе, в котором он описан 

 (5) пусть в классе Person (Человек) есть метод ShowFullName (вывести полное имя человека). Для того, чтобы вызвать этот метод, сначала нужно создать экземпляр класса Person


Номер 3
Отметьте верные утверждения:

Ответ:

 (1) для того, чтобы метод отработал, его необходимо вызвать 

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

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

 (4) метод обязательно должен выполнять какие-то действия 

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


Упражнение 2:
Номер 1
Для того, чтобы выводить на экран фамилию и возраст учеников (например, Иванов 13, Петров 16), эффективно использовать:

Ответ:

 (1) метод с двумя параметрами числового типа 

 (2) метод без параметров 

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

 (4) метод с двумя параметрами строкового типа 


Номер 2
Для того, чтобы выводить на экран тип животных и их клички (например, пес Барбос, кот Барсик), эффективно использовать:

Ответ:

 (1) метод с двумя параметрами числового типа 

 (2) метод без параметров 

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

 (4) метод с двумя параметрами строкового типа 


Номер 3
Для того, чтобы выводить на экран номера счетов и остатки на них (например, 41802810100001 5000), эффективно использовать:

Ответ:

 (1) метод с двумя параметрами числового типа 

 (2) метод без параметров 

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

 (4) метод с двумя параметрами строкового типа 


Упражнение 3:
Номер 1
Какой тип возвращаемого значения должен иметь метод, подсчитывающий и возвращающий сумму чисел, введенных с клавиатуры?

Ответ:

 (1) строковый 

 (2) void 

 (3) числовой 

 (4) тип указывать не нужно 


Номер 2
Какой тип возвращаемого значения следует указать для метода, выводящего на экран "hello, world"?

Ответ:

 (1) строковый 

 (2) void 

 (3) числовой 

 (4) тип указывать не нужно 


Номер 3
Какой тип возвращаемого значения должен иметь метод, возвращающий адрес учебного заведения?

Ответ:

 (1) строковый 

 (2) void 

 (3) числовой 

 (4) тип указывать не нужно 


Упражнение 4:
Номер 1
Метод concat, возвращающий сумму (результат присоединения, конкатенации) двух любых заданных строк, может иметь следующий вид:

Ответ:

 (1) void concat (string s1, string s2) {…} 

 (2) void concat (string s1, int s2) {…} 

 (3) string concat (string s1, string s2) {…} 

 (4) string concat (string s1, int s2) {…} 


Номер 2
Метод add, возвращающий сумму двух любых заданных целых чисел, может иметь следующий вид:

Ответ:

 (1) int add (int s1, int s2) {…} 

 (2) void add (bool s1, int s2) {…} 

 (3) bool add (string s1, int s2) {…} 

 (4) void add (int s1, int s2) {…} 


Номер 3
Метод equal, проверяющий равны ли два числа между собой и возвращающий результат истина или ложь, правильно описать таким образом:

Ответ:

 (1) equal bool (int s1, int s2) {…} 

 (2) void equal (string s1, int s2) {…} 

 (3) string equal (int s1, string s2) {…} 

 (4) bool equal (int s1, int s2) {…} 


Упражнение 5:
Номер 1
В классе Pupil (Ученик) есть публичный метод Answer (Отвечать) без параметров, возвращающий целое число от 2 до 5. Как можно вызвать этот метод?

Ответ:

 (1) int mark = Pupil.Answer(); 

 (2) Pupil Ivanov = new Pupil(); int mark = Ivanov.Answer(); 

 (3) int mark = Answer.Pupil(); 


Номер 2
Что будет выведено на экран?
	
    class Pupil: Person{
        public void SayHello(string surname){
            Console.WriteLine("Hello, " + name);
        }
    }
    class School{
        static void Main(string[] args){
            Pupil Petrov = new Pupil();
            Petrov.SayHello("Ivanov");
        }
    }	
	
	

Ответ:

 (1) Hello, Petrov 

 (2) Hello, Ivanov 

 (3) ничего, т.к. возникнет ошибка компиляции 


Номер 3
Что будет выведено на экран?
	
    class Pupil:Person{
        public void PrintAge(int age){
		age = 14;
            Console.WriteLine("age: " + age);
        }
    }
    class School{
        static void Main(string[] args){
            Pupil Petrov = new Pupil();
            Petrov.PrintAge(Console.ReadLine());
        }
    }
	
	

Ответ:

 (1) age: 14 

 (2) age: число_введенное_с_клавиатуры 

 (3) ничего, т.к. возникнет ошибка компиляции 


Упражнение 6:
Номер 1
Есть метод public void SayHello(string name, int age){}. Как можно вызвать этот метод?

Ответ:

 (1) SayHello(); 

 (2) SayHello; 

 (3) SayHello("Иван", "13"); 

 (4) SayHello("Иван", 13); 

 (5) SayHello(Иван, "13"); 

 (6) SayHello(Иван, 13); 


Номер 2
Есть метод public void Exam(string name, bool medal){}. Как можно вызвать этот метод?

Ответ:

 (1) Exam(); 

 (2) Exam; 

 (3) Exam("Иван", "true"); 

 (4) Exam("Иван", true); 

 (5) Exam(Иван, true); 


Номер 3
Есть метод public void Exam(bool medal, int mark){}. Как можно вызвать этот метод?

Ответ:

 (1) Exam(); 

 (2) Exam; 

 (3) Exam("true", "13"); 

 (4) Exam("true", 13); 

 (5) Exam(true, "13"); 

 (6) Exam(true, 13); 


Упражнение 7:
Номер 1
Отметьте вызовы функций, которые не вызовут ошибки компиляции:
	
    class Person {
        public string name; public int age;
        public Person(string n, int a) { name = n; age = a; }
        public void PrintName() { Console.WriteLine("Name: "+name); }
        protected void PrintAge() { Console.WriteLine("Age: " + age); }
    }
    class School {
        static void Main(string[] args) {
            Person Ivanov = new Person("Ivan Ivanov",15);
            // вызов метода
            Console.ReadLine();
        }
    } 
	
	

Ответ:

 (1) Ivanov.PrintAge(); 

 (2) Ivanov.PrintAge; 

 (3) Ivanov.PrintName(); 

 (4) Ivanov.PrintName; 


Номер 2
Отметьте вызовы функций, которые не вызовут ошибки компиляции:
	
    class Person {
        public string name; public int age;
        public Person(string n, int a) { name = n; age = a; }
        public void PrintName() { Console.WriteLine("Name: "+name); }
        void PrintInfo() { Console.WriteLine("Name: " + name + " Age: " + age); }
    }
    class School {
        static void Main(string[] args) {
            Person Ivanov = new Person("Ivan Ivanov",15);
            // вызов метода
            Console.ReadLine();
        }
    } 
	
	

Ответ:

 (1) Ivanov.PrintInfo; 

 (2) Ivanov.PrintName; 

 (3) Ivanov.PrintName(); 

 (4) Ivanov.PrintInfo(); 


Номер 3
Отметьте вызовы функций, которые не вызовут ошибки компиляции:
	
    class Person {
        public string name; public int age;
        public Person(string n, int a) { name = n; age = a; }
        public void PrintName() { Console.WriteLine("Name: "+name); }
        private void PrintTwoLines() { Console.WriteLine("Name: "+name+"\nAge: "+age); }
    }
    class School {
        static void Main(string[] args) {
            Person Ivanov = new Person("Ivan Ivanov",15);
            // вызов метода
            Console.ReadLine();
        }
    } 
	
	

Ответ:

 (1) Ivanov.PrintTwoLines(); 

 (2) Ivanov.PrintName(); 

 (3) Ivanov.PrintName; 

 (4) Ivanov.PrintTwoLines; 


Упражнение 8:
Номер 1
Отметьте верные утверждения:

Ответ:

 (1) каждый класс должен иметь только один конструктор 

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

 (3) класс может иметь несколько конструкторов с параметрами 

 (4) класс может иметь несколько конструкторов с параметрами, только если наборы типов параметров в этих конструкторах попарно отличаются (в т.ч. порядком) 


Номер 2
В классе Pupil (Ученик) могут одновременно существовать следующие пары конструкторов:

Ответ:

 (1) Pupil (string name, int age){…} и Pupil (int age, string name){…} 

 (2) Pupil (string name, string surname){…} и Pupil (string name, string address){…} 

 (3) Pupil (string name, int age){…} и Pupil (string name, int age, bool medal){…} 


Номер 3
Отметьте верные утверждения:

Ответ:

 (1) конструктор используется для создания объекта 

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

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

 (4) конструктор вызывается с помощью ключевого слова new 

 (5) конструктор вызывается только с помощью ключевого слова new 


Упражнение 9:
Номер 1
Из кода класса с помощью ключевого слова this можно обратиться к:

Ответ:

 (1) полю создаваемого объекта 

 (2) методу создаваемого объекта 

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

 (4) любому члену класса 


Номер 2
Какое значение будет у поля number объекта s43 в результате выполнения такой программы:
	
class School{
    int number = 0;
    public School(){
        number = 33;
    }
    public School(int n){
        number = n;
    }
    static void Main(string[] args){
        School s43 = new School(43);
    }
}	
	
	

Ответ:

 (1)

 (2) 33 

 (3) 43 


Номер 3
Какое значение будет у поля number объекта s43 в результате выполнения такой программы:
	
class School{
    int number = 0;
    public School(){
        number = 33;
    }
    public School(int n){
        number = n;
    }
    static void Main(string[] args){
        School s43 = new School();
    }
}	
	
	

Ответ:

 (1)

 (2) 33 

 (3) 43 


Упражнение 10:
Номер 1
Для того, чтобы обработать событие объекта, нужно:

Ответ:

 (1) создать класс объекта, с которым может произойти событие 

 (2) создать метод – обработчик события 

 (3) вызвать обработчик события 

 (4) связать событие объекта с его обработчиком 


Номер 2
Для того, чтобы обработать событие перемещения указателя мыши по кнопке myButton, необходимо написать соответствующий обработчик и подключить его к событию так:

Ответ:

 (1) myButton.MouseLeave += new System.EventHandler(myButtonMouseLeave); 

 (2) myButton.Click += new MouseEventHandler (myButtonMouseMove); 

 (3) myButton.MouseMove += new MouseEventHandler(myButtonMouseMove); 

 (4) myButton.MouseMove += new System.EventHandler (myButtonMouseMove); 


Номер 3
Для того, чтобы обработать событие клика (щелчка) по кнопке формы, нужно:

Ответ:

 (1) создать форму и кнопку 

 (2) написать обработчик события Click кнопки 

 (3) связать событие Click кнопки с его обработчиком 

 (4) добавить кнопку в коллекцию элементов управления формы 


Упражнение 11:
Номер 1
Отметьте верные утверждения:

Ответ:

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

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

 (3) пространство имен и содержащийся в нем класс должны иметь разные имена 

 (4) чтобы использовать класс Pupil, содержащийся в пространстве имен School, можно использовать директиву using School; 


Номер 2
Отметьте верные утверждения:

Ответ:

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

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

 (3) пространство имен и содержащийся в нем класс могут иметь одинаковое имя 

 (4) чтобы использовать класс Pupil, содержащийся в пространстве имен School, можно использовать директиву using Pupil; 


Номер 3
Отметьте верные утверждения:

Ответ:

 (1) пространство имен может содержать пространство имен 

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

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

 (4) чтобы использовать класс Random, содержащийся в пространстве имен Math, можно каждый раз прописывать путь к классу Math.Random, не используя директиву using 


Упражнение 12:
Номер 2
Отметьте верные утверждения:

Ответ:

 (1) класс Car (Машина) может наследовать от класса Tree (Дерево) 

 (2) поля класса могут наследоваться 

 (3) член класса доступен наследнику, только если он помечен модификатором доступа public 


Номер 3
Отметьте верные утверждения:

Ответ:

 (1) класс Oak (Дуб) может наследовать от класса Tree(Дерево) 

 (2) свойства класса могут наследоваться 

 (3) член класса без модификатора доступа доступен наследнику 


Упражнение 13:
Номер 1
Что выведет метод при использовании внутри программы:

class School 
{
        void Main(string[] args) 
        {
            ViewPerson("Ivan", "Ivanov");            
        }
        void ViewPerson(string Name, string Family)
        {
            Console.WriteLine("Премию получит: " + Name + " " + Family);
        }    
}



Ответ:

 (1) ошибку 

 (2) строку "Премию получит: " 

 (3) строку "Премию получит: Name Family" 

 (4) строку "Премию получит: Ivan Ivanov" 


Номер 2
Что выведет метод:
	
void ViewPerson(string Name, string Family)
{
	Console.WriteLine("Премию получит: " + Ivan + " " + Ivanov);
}
ViewPerson();
	
	

Ответ:

 (1) ошибку 

 (2) строку "Премию получит: " 

 (3) строку "Премию получит: Name Family" 

 (4) строку "Премию получит: Ivan Ivanov" 


Номер 3
Для чего предназначен конструктор?

Ответ:

 (1) для расширения метода 

 (2) для инициализации объекта 

 (3) для инициализации класса 




Главная / Программирование / C# для школьников / Тест 4