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

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

Упражнение 1:
Номер 1

Что является результатом программы

#include <stdio.h> int main(){ int x = 3, у = 3; printf("Значение префиксного выражения: %d\n", ++х); printf("Значение постфиксного выражения: %d\n", у++); printf("Значение х после приращения: %d\n", х); printf("Значение у после приращения: %d\n", у); return 0; }

Ответ:

 (1) значение префиксного выражения: 3 

 (2) значение постфиксного выражения: 4 

 (3) значение х после приращения: 4 

 (4) значение у после приращения: 4 


Номер 2

Что произойдет при выполнении данного оператора switch, если val = 1?

switch (val) { case 1: a(); case 2: b(); break; default: c(); break; }

Ответ:

 (1) будет выполнена функция а() 

 (2) будут выполнены функции a(), b() 

 (3) будут выполнены функции a(), b(), c() 


Номер 3

Расставьте операторы согласно их приоритета (по восходящей):

  • <<
  • ==
  • sizeof
  • ++

  • Ответ:

     (1) 1, 2, 3, 4 

     (2) 2, 1, 3, 4 

     (3) 1, 4, 3, 2 

     (4) 4, 2, 3, 1 


    Упражнение 2:
    Номер 1

    Перечислите побитовые логические операторы:


    Ответ:

     (1) | 

     (2) & 

     (3) ^ 

     (4) + 

     (5) * 


    Номер 2

    Что будет выведено на экран после выполнения программы?

    void main() { int i, j; j = 0; for( i = 0; i < 10; i++) { j++; if (j == 5) continue; } cout << j; }

    Ответ:

     (1) 0 

     (2) 5 

     (3) 10 

     (4) 11 


    Упражнение 3:
    Номер 1

    Что будет напечатано в результате работы следующей программы?

    main() { int a = 0, x = 2; for (int i = 0; i < 4; i++) { a++; if (i == 1) goto B; // x++; } if (a < x) goto C; x = 5; C: a -= x; B: a += x; cout << a << " " << x; }

    Ответ:

     (1) 2 4 

     (2) 4 2 

     (3) 5 2 

     (4) ошибка выполнения 


    Номер 2

    Можно ли переопределить операторы new и delete?


    Ответ:

     (1) да 

     (2) нет 

     (3) только new 

     (4) только delete 


    Номер 3

    Перечислите операторы выбора:


    Ответ:

     (1) if 

     (2) while 

     (3) for 

     (4) switch 


    Упражнение 4:
    Номер 1

    Что будет напечатано в результате работы следующей программы?

    main() { int a = 0, x = 0; for (int i = 0; i < 4; i++) { a++; if (i == 2) goto B; x++; } if (a > x) goto C; x = 10; C: a -= x; B: a += x; cout << a << " " << x; }

    Ответ:

     (1) 2 4 

     (2) 5 3 

     (3) 5 2 

     (4) ошибка выполнения 


    Номер 2

    Что будет напечатано при выполнении фрагмента кода:

    int x = 3, y = 2, z = 1; if(x >= y) if(y <= z) cout << "Вариант 1"; else if(x >= z) cout << "Вариант 2"; else cout << "Вариант 3";

    Ответ:

     (1) Вариант 1 

     (2) Вариант 2 

     (3) Вариант 3 

     (4) ничего не будет напечатано 


    Номер 3

    Что будет напечатано в результате работы следующей программы?

    int main() { int a = 0, x = 2; for (int i = 0; i < 1; i++) { a++; if (i == 1) goto B; x++; } if (a > x) goto C; /* x = 5; */ C: a -= x; B: a += x; cout << a << " " << x; return 0; }

    Ответ:

     (1) 1 2 

     (2) 1 3 

     (3) 2 3 

     (4) ошибка выполнения 


    Упражнение 5:
    Номер 1

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

    main() { int x = 0; for (int i = 0; i < 5; i++) for (int j = 0; j < 3; j++) { x++; if (j) continue; else break; } cout << x; }

    Ответ:

     (1) 4 

     (2) 5 

     (3) 0 

     (4) 1 


    Номер 2

    Какие из следующих операторов обеспечивают бесконечный цикл?


    Ответ:

     (1) while(1); 

     (2) for(; ;); 

     (3) for(;1;); 

     (4) while(0); 


    Номер 3

    Что выведет на экран следующий код:

    int x = 2; while (x != 12) { cout << x << endl; x = x + 2; }

    Ответ:

     (1) число 12 

     (2) все четные числа до 12 

     (3) все числа от 1 до 12 

     (4) синтаксическую ошибку 


    Упражнение 6:
    Номер 1

    Что производит следующий программный код:

    sum = 0; for (n = 1; n <= 10; n++) sum = sum + n;

    Ответ:

     (1) сложение четных чисел от 1 до 10 

     (2) сложение нечетных чисел от 1 до 10 

     (3) сложение всех чисел от 1 до 10 

     (4) умножение всех четных чисел от 1 до 10 


    Номер 2

    В каком выражении произойдет зацикливание программы?


    Ответ:

     (1) for (int iCount = 0; iCount <= 4;); 

     (2) while (true); 

     (3) while (false); 


    Номер 3

    Что произойдет при выполнении кода:

    for (i = 0; i < 5;) { continue; i--; func(); }

    Ответ:

     (1) функция func выполнится 5 раз 

     (2) функция func не выполнится ни разу 

     (3) функция func будет выполняться бесконечно 

     (4) функция func выполнится 1 раз 


    Упражнение 7:
    Номер 1

    Оператором цикла с предусловием является оператор:


    Ответ:

     (1) for (инициализация цикла; выражение-условие; список_выражений) тело_цикла 

     (2) while (выражение-условие) тело_цикла 

     (3) do тело_цикла while (выражение-условие) 


    Номер 2

    Оператором итерационного цикла является оператор:


    Ответ:

     (1) for (инициализация цикла; выражение-условие; список_выражений) тело_цикла 

     (2) while (выражение-условие) тело_цикла 

     (3) do тело_цикла while (выражение-условие) 


    Номер 3

    Оператором цикла с постусловием является оператор:


    Ответ:

     (1) for (инициализация цикла; выражение-условие; список_выражений) тело_цикла 

     (2) while (выражение-условие) тело_цикла; 

     (3) do тело_цикла while (выражение-условие) 


    Упражнение 8:
    Номер 1

    Если int n=2, какой будет результат

    switch(n) { case 2: cout << "YES"; break; case 3: cout << "NO"; break; default: cout << "MAYBE"; break; }

    Ответ:

     (1) YES 

     (2) NO 

     (3) MAYBE 

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


    Номер 2

    Нужно выделить память для одномерного массива А, состоящего из 10 элементов и затем освободить эту память. Какие из приведенных операторов пригодны для этой цели?


    Ответ:

     (1) int *A; A = new int(10); … delete [] A; 

     (2) int *A; A = new int[10]; … delete [] A; 

     (3) int A = new int[10]; … delete [] A;; 


    Номер 3

    Выберите корректные части кода

    1. int i =5; switch(i) { case 2: ;break; default:; } 2. char c ='a'; switch(c) { case 'a': ;break; default:; } 3. char* str ="a"; switch(str) { case "a": ;break; default:; }

    Ответ:

     (1) 1 и 2 

     (2) 2 и 3 

     (3) 1 и 3 

     (4) все верны 


    Упражнение 9:
    Номер 1

    Каково назначение параметра argc программы main?


    Ответ:

     (1) определяет тип параметров, передаваемых программе в командной строке 

     (2) определяет число параметров, передаваемых программе в командной строке 

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


    Номер 2

    Каково назначение параметра argv программы main?


    Ответ:

     (1) определяет тип параметров, передаваемых программе в командной строке 

     (2) определяет число параметров, передаваемых программе в командной строке 

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


    Номер 3

    Какое значение может иметь параметр argc функции main?


    Ответ:

     (1) всегда больше 1 

     (2) 0 

     (3) всегда не меньше 1 


    Упражнение 10:
    Номер 1

    Каким будет результат работы следующей программы?

    int a = 5 & 3; float b = 4.f; b += a++ / 2; cout << b;

    Ответ:

     (1) 5 

     (2) 4.5 

     (3) 4 

     (4) 3.5 


    Номер 2

    Каким будет результат работы следующей программы?

    int a=5 >> 3; float b = 5.5f; b+= ++a * 2; cout << b;

    Ответ:

     (1) 8 

     (2) 7.5 

     (3) 7 

     (4) 6.5 


    Номер 3

    Каким будет результат работы следующей программы?

    int a = 3 << 1; double b = 5; b += ++a * 2; cout << b;

    Ответ:

     (1) 10 

     (2) 19 

     (3) 18 

     (4) 23 


    Упражнение 11:
    Номер 1

    Выберите корректные части кода

    1. char* str ="a"; switch(str) { case "a": ;break; default:; } 2. enum day{sun,mon,thus}; day d = mon; switch(d) { case sun: ;break; }

    Ответ:

     (1) первая 

     (2) вторая 

     (3) обе верны 

     (4) обе ошибочны 


    Номер 2

    Что определяет операция sizeof(str);?


    Ответ:

     (1) число символов в заданной строке 

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

     (3) операции, допустимые с данной переменной 


    Номер 3

    Перечислите операторы сравнения:


    Ответ:

     (1) = 

     (2) == 

     (3) << 

     (4) < 

     (5) >> 

     (6) & 

     (7) != 


    Упражнение 12:
    Номер 1

    Что значит операция:<<?


    Ответ:

     (1) операция вывода 

     (2) сдвиг влево 

     (3) меньше или равно 


    Номер 2

    Укажите тернарные операции:


    Ответ:

     (1) & 

     (2) << 

     (3) && 

     (4) || 

     (5) ? : 


    Номер 3

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

    int main() { int i = 5; int* pi = &i; void * v = pi; pi = v; cout << *pi; return 0; }

    Ответ:

     (1) 5 

     (2) 0 

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




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