Vòng lặp C++ For
Vòng lặp C++ For
Khi bạn biết chính xác số lần bạn muốn lặp qua một khối mã, hãy sử dụng vòng lặp for
thay vì vòng lặp while
:
Cú pháp
for ( statement 1 ; statement 2 ; statement 3 ) {
// code block to be executed
}
Câu lệnh 1 được thực thi (một lần) trước khi thực thi khối mã.
Câu lệnh 2 xác định điều kiện để thực thi khối mã.
Câu lệnh 3 được thực thi (mọi lúc) sau khi khối mã được thực thi.
Ví dụ dưới đây sẽ in các số từ 0 đến 4:
Ví dụ giải thích
Câu lệnh 1 đặt một biến trước khi vòng lặp bắt đầu (int i = 0).
Câu lệnh 2 xác định điều kiện để vòng lặp chạy (i phải nhỏ hơn 5). Nếu điều kiện đúng thì vòng lặp sẽ bắt đầu lại, nếu sai thì vòng lặp sẽ kết thúc.
Câu lệnh 3 tăng giá trị (i++) mỗi khi khối mã trong vòng lặp được thực thi.
Một vi dụ khac
Ví dụ này sẽ chỉ in các giá trị chẵn trong khoảng từ 0 đến 10:
Vòng lồng nhau
Cũng có thể đặt một vòng lặp bên trong một vòng lặp khác. Đây được gọi là vòng lặp lồng nhau .
"Vòng lặp bên trong" sẽ được thực thi một lần cho mỗi lần lặp của "vòng lặp bên ngoài":
Ví dụ
// Outer loop
for (int i = 1; i <= 2; ++i) {
cout << "Outer: " << i << "\n"; // Executes 2 times
// Inner
loop
for (int j = 1; j <= 3; ++j) {
cout << "
Inner: " << j << "\n"; // Executes 6 times (2 * 3)
}
}
Hãy tự mình thử »Vòng lặp foreach
Ngoài ra còn có một "vòng lặp for-each " (được giới thiệu trong C++ phiên bản 11 (2011), được sử dụng riêng để lặp qua các phần tử trong một mảng (hoặc các tập dữ liệu khác):
Cú pháp
for ( type variableName : arrayName ) {
// code block to be executed
}
Ví dụ sau xuất ra tất cả các phần tử trong một mảng, sử dụng "vòng lặp for-each ":
Ví dụ
int myNumbers[5] = {10, 20, 30, 40, 50};
for (int i : myNumbers) {
cout << i << "\n";
}
Hãy tự mình thử »Lưu ý: Đừng lo lắng nếu bạn không hiểu ví dụ trên. Bạn sẽ tìm hiểu thêm về mảng trong chương Mảng C++ .