KWALIFIKACJA INF2 + INF3 - CZERWIEC 2012

PYTANIE NR 11.
W języku C++ switch to instrukcja
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
switch w C++ służy do wyboru jednej z wielu gałęzi wykonania na podstawie wartości wyrażenia (porównanie z etykietami case). Dlatego jest to instrukcja wyboru. "Iteracyjna" dotyczy pętli, "skoku" to m.in. break/continue/return, a "warunkowa" odnosi się zwykle do if/else.

Pełne wyjaśnienie:

W języku C++ instrukcje sterujące często porządkuje się na kilka grup: instrukcje warunkowe (najczęściej if/else), instrukcje wyboru (wielokrotnego wyboru, czyli switch), instrukcje iteracyjne (pętle for/while/do-while) oraz instrukcje skoku (np. break, continue, return, goto).

Odpowiedź "wyboru." jest poprawna, ponieważ switch wybiera ścieżkę wykonania na podstawie wartości wyrażenia w nawiasie. Wewnątrz bloku znajdują się etykiety case z wartościami stałymi oraz opcjonalnie default. Program przechodzi do pasującej etykiety, a instrukcja break zwykle kończy obsługę danego przypadku.

Dlaczego pozostałe odpowiedzi są niepoprawne?

  • "skoku." – instrukcje skoku to odrębna kategoria. W kontekście switch pojawia się break, ale to nie czyni całej konstrukcji "instrukcją skoku"; break jest tylko elementem często używanym w jej wnętrzu.
  • "iteracyjna." – iteracja oznacza wielokrotne wykonywanie (pętlę). switch sam z siebie nie tworzy pętli; jedynie wybiera jedną z gałęzi.
  • "warunkowa." – potocznie można mówić, że switch "podejmuje decyzję", ale w terminologii dydaktycznej i programistycznej "instrukcje warunkowe" to przede wszystkim if/else, gdzie sprawdzany jest warunek logiczny true/false. switch działa przez dopasowanie wartości do zestawu stałych przypadków, więc klasyfikuje się go jako instrukcję wyboru.

Wskazówka egzaminacyjna: jeśli w pytaniu pojawia się słowo switch i podział na typy instrukcji, szukaj kategorii "wyboru" (selekcji), a pętle rezerwuj dla "iteracyjnych".

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Instrukcja switch w C++ służy do wyboru jednej z wielu gałęzi kodu na podstawie wartości wyrażenia. W bloku definiuje się przypadki case oraz opcjonalnie default, a wykonanie zwykle kończy się instrukcją break.
W terminologii nauczania programowania "warunkowe" odnosi się głównie do if/else (sprawdzenie true/false). switch działa przez dopasowanie wartości do jednej z etykiet case, więc jest klasyfikowany jako instrukcja (wielokrotnego) wyboru.
Najczęściej spotkasz podział na: warunkowe (if/else), wyboru (switch), iteracyjne (for/while/do-while) oraz skoku (break/continue/return/goto). Ten podział pomaga szybko rozpoznać, do której grupy należy dana konstrukcja.
switch jest wygodny, gdy wybierasz działanie na podstawie jednej zmiennej/wyrażenia i masz wiele stałych wariantów (np. menu 1/2/3). if/else bywa lepsze przy złożonych warunkach logicznych, zakresach wartości lub warunkach łączonych.
break przerywa wykonywanie bieżącego przypadku i wychodzi z bloku switch. Bez break kod może "przejść" do kolejnych przypadków (tzw. fall-through). Na egzaminie często sprawdza się właśnie rozumienie roli break i skutków jego braku.
Nie. switch nie powtarza automatycznie kodu, tylko wybiera jedną z gałęzi na podstawie wartości. Pętle iteracyjne to konstrukcje typu for, while i do-while, które wykonują blok wielokrotnie, dopóki spełniony jest warunek.
default to gałąź wykonywana, gdy żadna etykieta case nie pasuje do wartości wyrażenia. Zwykle nie jest obowiązkowa składniowo, ale jest zalecana, bo zwiększa odporność programu na nieprzewidziane wartości i poprawia czytelność logiki.
W praktyce switch stosuje się do typów całkowitoliczbowych i wyliczeniowych (enum), czyli takich, które dają się porównać z dyskretnymi stałymi w case. Na poziomie egzaminu ważne jest rozumienie, że switch porównuje wartość z listą stałych przypadków.
Najczęstsze pomyłki to: mylenie switch z instrukcją warunkową if/else w klasyfikacji, nieuwzględnienie skutków braku break (fall-through) oraz traktowanie default jako obowiązkowego. Warto ćwiczyć czytanie krótkich fragmentów kodu.
Jeśli w treści jest słowo switch i odpowiedzi dotyczą kategorii (wyboru/iteracyjna/skoku/warunkowa), to poprawna jest zwykle instrukcja wyboru. Zapamiętaj skojarzenie: case/default oznacza wybór z wielu wariantów, a pętle oznaczają iterację.
info

Statystycznie 81% uczniów zna prawidłową odpowiedź. średnio łatwe

Specjaliści zwracają uwagę: "switch w C++ służy do wyboru jednej z wielu gałęzi wykonania na podstawie wartości wyrażenia (porównanie z etykietami case)."

Źródła:

  • cpp0x.pl/dokumentacja/jezyk-cpp/instrukcja-switch/ - dostęp 2026-03-05
  • https://www.algorytm.edu.pl/algorytmy/cpp-instrukcja-wyboru-switch.html - dostęp 2026-03-05
  • https://cpp-polska.pl/sekcja/instrukcja-switch/ - dostęp 2026-03-05

Materiały:

  • Dokumentacja języka C++ (sekcja dotycząca instrukcji selection statements)
  • Materiały dydaktyczne o instrukcjach sterujących w C++ (if/else, switch, pętle)
  • Ćwiczenia z przepływu sterowania: zamiana if-else-if na switch i odwrotnie

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego