You are on page 1of 6

Тест по курсу «С» Тема: Логические операторы и операторы ветвлений

1. Опишите принцип работы логических операторов && и ||.

&& - Логічне І об'єднує разом два твердження і повертає істину тільки в тому випадку, якщо і
ліве і праве твердження істинні. Якщо хоча б одне з тверджень або обидва хибні, увесь вираз
буде хибним. Логічне І таким чином, якщо перше твердженняхибне, то друге вже не
перевіряється.

|| - Логічне АБО об'єднує разом два твердження і повертає істину тільки в тому випадку, якщо
хоча б одне з тверджень істине, і хибне в тому випадку, якщо обидва твердження хибні. Логічне
АБО працює таким чином, якщо перше твердження істина, то друге вже не перевіряється.

2. Напишите синтаксис и принцип работы оператора ветвления if.

 Тип даних - цілі числа.


 Фігурні дужки використоуюються якщо if має більше ніж одну дію.
 Використовуються оператори порівняння.
 Конструктор if може бути вкладеним у оператор if
 Else винонується лише в тому випадку, якщо умова в попередньому if - false

3. Напишите синтаксис и принцип работы оператора множественного выбора switch.

 Типи даних – char або цілі числа.


 дії, які повинні виконатися, лише якщо значення виразу співпало зі значенням case
 Не використовуються арифметичні оператори у case.
 Конструктор switch може бути вкладеним у оператор switch
 Break зупиняє виконання певного case

4. Укажите верные утверждения:

 Операции сравнения имеют более высокий приоритет, чем арифметические операции


 Операция && возвращает true только в том случае, если оба ее операнда имеют значение
true.
 Операция && и операция || работают идентично.

Вірне друге твердження: Операция && возвращает true только в том случае, если оба ее
операнда имеют значение true.
5. Напишите операторы С++ выполняющие следующие действия: a. Объявление переменных x,y,z
типа int. Ввод с клавиатуры значений x и y. b. Присваивание суммы x и y переменной z.
Увеличение значения x на 1 после вычисления. c. Проверка больше ли значение z числа 10. Если
больше то печать текста: “z больше 10”. d. Вычисление остатка от деления y на x и присвоение
результата y. Записать два варианта.

int x, y, z;

cin >> x >> y >> b;

z = x + y;

x += 1; або x = x++;

if (z > 10) cout << “z больше 10”;

y %= x; або y = y % x;

6. Отработает ли следующий код, если да, то что выведет на экран, если нет, то укажите ошибки

#include using

namespace std;

void main()

bool b=double(1/2);

cout << b;

Код спрацює і виведе на екран результат 0.


7. Укажите верные утверждения:

 В структуре switch должна быть метка default


 Метка default может располагаться в любом месте структуры switch.
 Значения в метках case должны располагаться в одинарных кавычках.
 В операторе switch могут проверяться выражения, результатом которых будет
целочисленный либо символьный тип данных.
 Если в конце метки case пропустить оператор break то произойдет ошибка на этапе
компиляции.

Вірне перше та друге твердження:

 В операторе switch могут проверяться выражения, результатом которых будет


целочисленный либо символьный тип данных.

Метка default может располагаться в любом месте структуры switch.

8. Что будет в результате выполнения следующего кода

#include using namespace std;

void main()

int a = 10;

if(a = 5) cout<<"Yes";

else cout<<"No";

 Yes
 No
 Ошибка на этапе компиляции

Вірна відповідь: Yes


9. Что будет в результате выполнения следующего кода

#include using namespace std;

void main()

if(5=5) cout<<"Yes";

else cout<<"No"; }

 Yes
 No
 Ошибка на этапе компиляции

Вірна відповідь: Ошибка на этапе компиляции

10. Отработает ли следующий код, если да, то что выведет на экран, если нет, то укажите ошибки.

#include

using namespace std;

void main()

int a;

cout<<"Enter a:"

cin>>a;

switch(a)

case 1: cout<<"One";

case 2: cout<<"Two";

case 3: cout<<"Three";

Код не спрацює:
1. cout<<"Enter a:" – немає в кінці крапки з комою;
2. break та default відсутні

11. Отработает ли следующий код, если да, то что выведет на экран, если нет, то укажите ошибки.
#include

using namespace std;

void main()

int a = 3,b = 4;

if(a = b)

cout<<"равны";

else

cout<<"неравны";

Код спрацює і виведе на екран "равны".


12. Отработает ли следующий код, если да, то что выведет на экран, если нет, то укажите ошибки.

#include

using namespace std;

void main()

int num, a=750,b=450,c=150;

cin>>num;

if(num < a)

cout<<"num<750";

else if(num < b)

cout<<"num<450";

else

cout<<"num<150";

Код спрацює і виведе "num<750"

You might also like