continue と break の組み合わせ
次のコードを実行したときの出力として、正しいものを1つ選べ。
for n in range(5):
if n == 1:
continue
if n == 3:
break
print(n, end=" ")
- A
0 1 2 - B
0 2 - C
0 2 3 - D
0 2 4
正解と解説を見る
正解:B
continue は次の繰り返しへ進み、break はループを抜ける。
| 順 | 実行する行 | 実行後の変数 |
|---|---|---|
| 1 | `for n in range(5):` | n = 0 |
| 2 | `if n == 1:` | n = 0 |
| 3 | `if n == 3:` | n = 0 |
| 4 | `print(n, end=" ")` | n = 0 |
| 5 | `for n in range(5):` | n = 1 |
| 6 | `if n == 1:` | n = 1 |
| 7 | `continue` | — |
| 8 | `for n in range(5):` | n = 2 |
| 9 | `if n == 1:` | n = 2 |
| 10 | `if n == 3:` | n = 2 |
| 11 | `print(n, end=" ")` | n = 2 |
| 12 | `for n in range(5):` | n = 3 |
| 13 | `if n == 1:` | n = 3 |
| 14 | `if n == 3:` | n = 3 |
| 15 | `break` | — |
| 結果 | 実際の出力 | 0 2 |
- A
誤り。1 は
continueで出力されない。 - B
正しい。1 は
continueで飛ばされ、3 でbreakしてループを抜ける。 - C
誤り。3 に到達すると
breakで抜ける。 - D
誤り。3 で終了する。
このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。