3. Визначити значення змінної x, що виводиться на екран, після виконання наступного фрагменту
коду:
int a, x;
a = 1;
x = 0;
switch( a )
{
case 1:
x = 1;
case 2:
x = 2;
case 3:
x = 3;
default:
x = 4;
}
printf("x=%d", x);
обязательно написать обьяснения
Ответы
Ответ дал:
1
Після виконання цього фрагменту коду значення змінної x буде рівним 3.
Причиною цього є те, що в операторі switch у випадку, коли значення змінної a рівне 1, виконується не лише оператор x = 1, але також усі наступні оператори, доки не буде виконаний оператор break, який перервав би виконання умови. Отже, значення змінної x буде перезаписано значенням 2, а потім 3. Оператор default не виконується, тому що значення змінної a відповідає одному з значень у операторі case.
asilvejstruk:
Да ну, всё правильно же
Компилятор выдает значения 4
Мой даёт значения 3
Ты уверен, что правильно дал мне код
Может упустил какие-то детали
Код скопирован был,уже нету разницы,уже сам решил
Прошу прошения, проверил действительно ошибся, сейчас исправлю
Дай телегу там поясню, ибо тут не дают отредачить
Код был скопировал не правильно, мой компилятор вообще не читал норм, ладно проехали уже
@namewilson
Вас заинтересует
1 год назад
1 год назад
1 год назад
1 год назад
3 года назад
8 лет назад
8 лет назад