第4章 制御構文 / 第2回 模擬試験
次のコードの実行結果として正しいものはどれか。 ```php for ($i = 0; $i < 5; $i++) { if ($i == 2) { continue; } if ($i == 4) { break; } print $i; } ```
0134
01234
013
正解
01
解説
`continue`は現在のループの残りの処理をスキップして次のイテレーションに進み、`break`はループそのものを終了します。
・`$i = 0`: 出力`0`
・`$i = 1`: 出力`1`
・`$i = 2`: `continue`が実行され、`print $i;`はスキップ(何も出力されない)
・`$i = 3`: 出力`3`
・`$i = 4`: `break`が実行され、`print $i;`に到達する前にループ終了(`4`は出力されない)
したがって出力は`013`です。
例:
```
for ($i = 0; $i < 5; $i++) {
if ($i == 2) { continue; }
if ($i == 4) { break; }
print $i;
}
// 出力: 013
```
(参照: 独習PHP 第4版 第4章 制御構文 4.3節 ループの制御 p.153〜157)
関連する問題
- 次のコードの実行結果として正しいものはどれか。 ```php $num = ['zero', 'one', 'three']; $num[3] = 'four'; $num[2] = 'two'; print ('【loop_A】'); for ($i = 0, $count_num = count($num); $i < $count_num; $i++) { print ($num[$i] . ','); } print ('【loop_B】'); foreach ($num as $i => $n) { print ($i . ','); } ```
- PHPの条件分岐に関する次の記述のうち、誤っているものはどれか。
- 次のコードの実行結果として正しいものはどれか。 ```php $i = 1; while ($i <= 5) { print $i; $i++; } ```
- PHPのループ制御に関する次の記述のうち、正しいものはどれか。
- PHPの条件分岐に関する次の記述のうち、正しいものはどれか。