Vòng lặp for
được sử dụng để duyệt qua các phần tử trong một tập hợp. Nó thường được sử dụng khi bạn có một khối câu lệnh cần được thực thi n
lần, có nghĩa là bạn biết được số lượng vòng lặp cần thực hiện.
Cấu trúc vòng lặp for trong C
Cú pháp cơ bản của vòng lặp "for" trong C như sau:
cpp
for (khởi tạo giá trị biến lặp; điều kiện lặp; cập nhật biến lặp) {
// statements inside the body of loop
}
khởi tạo giá trị biến lặp
: Điều này thường là một biến dùng để kiểm soát số lần lặp. Bạn có thể khởi tạo giá trị ban đầu của biến ở đây.điều kiện lặp
: Điều kiện được kiểm tra trước mỗi lần lặp. Nếu điều kiện trả về false, vòng lặp sẽ kết thúc.cập nhật biến lặp
: Bước này thường là để thay đổi giá trị của biến lặp sau mỗi lần lặp.
Ví dụ:
cpp
for (int i = 0; i <= 10; i++) {
// statements inside the body of loop
}
Vòng lặp hoạt động như thế nào?
- Bước 1: Khởi tạo giá trị biến lặp.
Bước này chỉ diễn ra một lần duy nhất, ở đầu vòng lặp. Nó được sử dụng để khởi tạo biến lặp và thường được thực hiện một lần duy nhất. - Bước 2: Kiểm tra điều kiện lặp.
Trước mỗi lần lặp, điều kiện lặp được kiểm tra. Nếu điều kiện trả vềfalse
, vòng lặp kết thúc. Nếu trả vềtrue
, vòng lặp tiếp tục. - Bước 3: Thực Hiện Câu Lệnh Trong Vòng Lặp.
Tuy nhiên, nếu biểu thức kiểm tra bằngtrue
, các câu lệnh bên trong phần thân của vòng lặpfor
được thực thi. - Bước 4: Cập Nhật Biến Lặp.
Cập nhật giá trị biến lặp và quay trở lại bước 2 để kiểm tra.
Quá trình này diễn ra cho đến khi biểu thức điều kiện (bước 2) kiểm tra là false
. Khi biểu thức điều kiện kiểm tra là false
, vòng lặp chấm dứt.
Luồng của vòng lặp for
Example
Ví dụ 1:
In ra các số từ 1 đến 10.
cpp
#include <stdio.h>
int main() {
for (int i = 1; i <= 10; i++) {
printf("%d\n", i);
}
printf("End loop!\n");
}
Kết quả
1
2
3
4
5
6
7
8
9
10
End loop!
Giải thích:
- Bước 1. Gán biến lặp
i = 1
- thực hiện 1 lần duy nhất. - Bước 2. Kiểm tra điều kiện
(i = 1) < 10
→true
. - Bước 3. Do kiểm tra điều kiện
true
→ Thực hiện thân vòng lặpfor
→ in ra giá trị củai
. - Bước 4. Gọi tới
i++
→ tăngi
lên1
đơn vị → lúc nàyi = 2
. - Bước 5. Quay lại bước 2 và chạy lại.
- Chúng ta sẽ lặp đi lặp lại bước 2 đến bước 5 cho đến khi
i = 11
, lúc này bước 2 sẽ trả vềfalse
→ Kết thúc luôn vòng lặp.
Ví dụ 2:
In ra các số chẵn từ 1 đến 10.
cpp
#include <stdio.h>
int main() {
for (int i = 1; i <= 10; i++) {
if (i % 2 == 0) {
printf("%d\n", i);
}
}
printf("End loop!\n");
}
Kết quả
2
4
6
8
10
End loop!
Chúng ta còn có một cách khác là sửa lại vòng lặp như sau:
cpp
#include <stdio.h>
int main() {
for (int i = 2; i <= 10; i = i + 2) {
printf("%d\n", i);
}
printf("End loop!\n");
}
Ví dụ 3:
Tính tổng các số từ 1 đến 10.
cpp
#include <stdio.h>
int main() {
int sum = 0;
for (int i = 1; i <= 10; i++) {
sum += i;
}
printf("sum = %d\n", sum);
printf("End loop!\n");
}
Kết quả
sum = 55
End loop!