C++のfor文とbreakとcontinueのサンプルです。
目次
for文
| for(初期化式 ; 条件式 ; 増減式){ 繰り返される箇所 } |
- 初期化式は、最初に1回だけ実行されます。
- 初期化式にあるループで使用する変数をカウンター変数またはループ変数といいます。
- 条件式がtrueの間、処理を繰り返します。
- 増減式でカウンター変数/ループ変数の値が変わります。
コード
for文のサンプルです。
6行目のカウンター変数のiは0から始まり、増減式(i++)により1ずつ増えていきます。
i <3がtrueの間、処理を繰り返します。0,1,2が出力されます。
#include <iostream>
using namespace std;
int main() {
for (int i = 0; i < 3; i++) {
cout << i << "\n"; // 0 1 2
}
return 0;
}
break文のサンプル
- for文でbreakを使用するとループ処理から抜けます。(そのブロックから抜けます)
- 「{」(波括弧) から「}」までをブロックといいます。
コード
for文でbreakを使用するサンプルです。
9行目のbreakでfor文を抜けます。i=0のみ出力されます。
#include <iostream>
using namespace std;
int main() {
for (int i = 0; i < 3; i++) {
if (i == 1) {
break;
}
cout << "i =" << i << "\n"; // i=0
}
return 0;
}
for文が入れ子のときのbreak文のサンプル
for文が入れ子のときのbreakのサンプルです。
6,8行目にfor文があり入れ子になっています。
11行目のbreakは、内側のfor文のみ抜けます。
#include <iostream>
using namespace std;
int main() {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
if (j == 0) {
break;
}
cout << "j =" << j << "\n"; //出力なし
}
cout << "i =" << i << "\n"; //出力結果 i=0 i=1
}
return 0;
}
continue文のサンプル
- for文でcontinueを使用すると、ループ処理の先頭に戻ります。(ブロックの先頭位置に戻ります)
- 「{」(波括弧) から「}」までをブロックといいます。
コード
for文でcontinueを使用するサンプルです。
9行目のcontinueでループ処理の先頭の6行目に戻ります。i=0とi=2が出力されます。
#include <iostream>
using namespace std;
int main() {
for (int i = 0; i < 3; i++) {
if (i == 1) {
continue;
}
cout << "i =" << i << "\n"; // i=0 i=2
}
return 0;
}
for文が入れ子のときのcontinue文のサンプル
for文が入れ子のときのcontinueのサンプルです。
6,8行目にfor文があり入れ子になっています。
11行目のcontinueは、内側のfor文の先頭の8行目に戻ります
#include <iostream>
using namespace std;
int main() {
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
if (j == 0) {
continue;
}
cout << "j =" << j << "\n"; // j=1,j=1
}
cout << "i =" << i << "\n"; // i=0,i=1
}
return 0;
}
関連の記事