Pytanie dotyczy doboru instrukcji sterującej do sytuacji, w której chcemy wykonać z góry określoną liczbę operacji. W takim przypadku najczęściej stosuje się konstrukcję "for", ponieważ naturalnie opisuje iteracje liczbnikowe: inicjalizuje licznik, sprawdza warunek zakończenia i zmienia licznik po każdym obiegu pętli. Dzięki temu łatwo kontrolować, że fragment kodu wykona się dokładnie N razy.
Odpowiedź "switch" jest błędna, bo "switch" to instrukcja wyboru (rozgałęzienia) — wybiera jeden z wariantów wykonania na podstawie wartości wyrażenia. Sama w sobie nie realizuje wielokrotnego powtarzania kodu; ewentualne powtarzanie wymagałoby dodatkowej pętli wokół "switch".
Odpowiedź "foreach" jest błędna w kontekście sformułowania o "zmiennej niebędącej tablicą", ponieważ "foreach" służy do iterowania po elementach kolekcji (np. tablicy, listy, zbioru, obiektu iterowalnego). To nie jest typowa pętla do wykonania "określonej liczby" iteracji niezależnie od danych — liczba obiegów wynika z liczby elementów w kolekcji.
Odpowiedź "if" również jest błędna, bo "if" to instrukcja warunkowa, która wykonuje blok kodu (lub nie) w zależności od spełnienia warunku. Nie tworzy mechanizmu wielokrotnego wykonywania; aby powtarzać operacje, potrzeba pętli (np. for/while) lub rekurencji.
Wskazówka egzaminacyjna: gdy w treści pojawia się "dokładnie N razy", "z góry ustalona liczba powtórzeń" lub "licznik", najczęściej pasuje pętla licznikowa. Gdy pojawia się "dla każdego elementu kolekcji" — wtedy zwykle pasuje konstrukcja iteracyjna typu foreach.