игра брюс 2048
Главная / Программирование / Язык программирования C++ / Тест 14

Язык программирования C++ - тест 14

Упражнение 1:
Номер 1
В чем заключается суть компоновки программы?

Ответ:

 (1) в переводе текстового файла в объектный модуль 

 (2) в подготовке программы к выполнению 

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


Номер 2
Что является результатом компоновки программы?

Ответ:

 (1) заголовочный файл 

 (2) исполняемый файл или библиотека 

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


Номер 3
С какой целью производится вынесение функций в отдельный заголовочный файл?

Ответ:

 (1) для более наглядного и удобного представления функций 

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

 (3) для возможности использования в других программах 


Упражнение 2:
Номер 2
Сколько вызовов системных функций всегда будет в программе, независимо от ее реализации?

Ответ:

 (1) всегда 2 

 (2) по крайней мере один 

 (3) не менее двух 


Номер 3
Есть ли преимущество выноса определения функции в отдельный файл

Ответ:

 (1) да,при использования функции в нескольких файлах 

 (2) нет,это затрудняет работу программы 

 (3) да,можно определить функцию только один раз 


Упражнение 3:
Номер 1
Что произойдет, если определение класса будет находиться в файле в двух местах?

Ответ:

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

 (2) второе определение будет проигнорировано 

 (3) зависит от других факторов 

 (4) ошибка компиляции 

 (5) ошибка произойдет при сборке программы из нескольких файлов 


Номер 2
Что произойдет, если определение функции будет находиться в файле в двух местах?

Ответ:

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

 (2) второе определение будет проигнорировано 

 (3) зависит от других факторов 

 (4) ошибка компиляции 

 (5) ошибка произойдет при сборке программы из нескольких файлов 


Номер 3
Определение класса это

Ответ:

 (1) объявление всех его методов и полей 

 (2) вызов конструктора 

 (3) инициализация всех его полей 


Упражнение 4:
Номер 2
Для чего предназначен фрагмент текста из заголовочного файла:
//Пример файла test.h
#ifndef TEST
#define TEST
//прочие строки кода
#endif

Ответ:

 (1) для целей отладки 

 (2) для определения символьной константы Test 

 (3) для защиты от повторного включения файла test.h 

 (4) для защиты от копирования 

 (5) для защиты от удаления 


Номер 3
Что будет выведено на экран в результате выполнения приведенной ниже программы:
	
#include "iostream.h"
#include "conio.h"
#define N=10
int main()
{
  int x=N;
  cout<<x;
  getch();
  return 0;
}
	
	

Ответ:

 (1) компилятор выдаст ошибку компиляции 

 (2) N 

 (3) 10 

 (4) x 


Упражнение 5:
Номер 2
Какова последовательность создания исполняемого файла:
 
  • Создать файл с исходным текстом программы, который будет иметь расширение .cpp.
  • Скомпоновать объектный файл с необходимыми библиотеками.
  • Скомпилировать исходный код.

  • Ответ:

     (1) 1-3-2 

     (2) 2-3-1 

     (3) 1-2-3 

     (4) 3-2-1 

     (5) 2-1-3 


    Номер 3
    Каково преимущество использования ключевого слова const вместо директивы #define?

    Ответ:

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

     (2) к константе, определенной с помощью const, можно применить операции инкремента и декремента 

     (3) константа, определенная с помощью const, доступна в других модулях программы 

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


    Упражнение 6:
    Номер 1
    С помошью какой директивы происходит подключение других модулей программы?

    Ответ:

     (1) #include 

     (2) #define 

     (3) #ifndef 


    Номер 2
    В чем различие использования следующих выражений #include <...> и #include "..."

    Ответ:

     (1) нет различий 

     (2) различие заключается в методе поиска препроцессором включаемого файла 

     (3) в различии использования заголовочных и исходных файлов 


    Номер 3
    Возможно ли использование подобного выражения?
        
          #define myincl "D:\Project\Coding\CodingU.h"
          #include myincl
        

    Ответ:

     (1) нет 

     (2) да 


    Упражнение 7:
    Номер 1
    Если в программе объявлен макрос #define CIRC(x) (3.14159 * (x) * (x)), то как будет подставлен этот макрос в тексте программы при следующем вызове:
        
        S = CIRC(a + b);
        

    Ответ:

     (1) S = (3.14159 * a + b * a + b); 

     (2) S = (3.14159 * (a + b) * (a + b)); 

     (3) S = (3.14159 * (a + b)); 


    Номер 2
    Какой результат будет у следующего выражения?
        
        #define CIRC(x) (3 * (x) * (x))
        #include <iostream.h>
        int main()
        {
        int a = 1, b = 2;
        std::cout << CIRC(a + b); 
        }
        

    Ответ:

     (1) 9 

     (2) 27 

     (3) 16 

     (4) 28 


    Номер 3
    Отметьте истинные высказывания в отношении использования макросов и функций:

    Ответ:

     (1) в большинстве случаев функции позволяют сокращать объем выполняемого файла 

     (2) в большинстве случаев макросы позволяют сокращать время выполнения 

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


    Упражнение 8:
    Номер 1
    Отметьте истинные высказывания в отношении использования макросов и функций:

    Ответ:

     (1) в большинстве случаев функции позволяют сокращать объем выполняемого файла 

     (2) в большинстве случаев макросы позволяют сокращать время выполнения 

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


    Номер 2
    Какой результат будет у следующего выражения?
        
        // файл File1.h
        #ifndef __File_h__
        #define myconst 35
        #else
        #define myconst 30
        #endif
        
        // файл Test.cpp
        #include <iostream.h>
        #include "File1.h"
        int main()
        {    cout << myconst + 10; 
        }
        

    Ответ:

     (1) 40 

     (2) 45 

     (3) 35 

     (4) ошибка компиляции 


    Номер 3
    Если задано
            #define f(x) x##4
            то какой будет результат после препроцессора ?
    #if 4
    int d4;
    f(d) = 5;
    #endif

    Ответ:

     (1) d4 = 5; 

     (2) x*4 = 5; 

     (3) пусто 

     (4) f(d4) = 5; 

     (5) d = x; 

     (6) = 5; 


    Номер 4
    Если задано
            #define foo(x,y) x##y
            то какой будет результат после препроцессора ?
            foo(a,c)

    Ответ:

     (1) ac 

     (2) "ac" 

     (3) a c 

     (4) a#c 




    Главная / Программирование / Язык программирования C++ / Тест 14