Vòng lặp for trong C là nội dung chúng ta sẽ tiếp tục tìm hiểu trong bài học này. Vòng lặp cùng với cấu trúc if else là các cấu trúc điều khiển có trong hầu hết mọi chương trình phần mềm. Việc sử dụng vòng lặp cho phép chúng ta có thể giải quyết các công việc có sự lặp lại bằng những dòng code rất ngắn gọn. Chúng ta cùng tìm hiểu vòng lặp for ngay nhé.
Video hướng dẫn vòng lặp for trong C
Cú pháp vòng lặp for trong C
1 2 3 4 |
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) { // các lệnh cần lặp } |
Hình ảnh dưới đây cho ta cú pháp của vòng lặp C và trình tự hoạt động của vòng lặp for.
- B1. Khởi tạo giá trị biến lặp, chỉ thực hiện 1 lần duy nhất
- B2. Kiểm tra điều kiện lặp, nếu điều kiện sai => Chuyển sang B5
- B3. Thực hiện nội dung lặp ở trong thân vòng lặp
- B4. Cập nhật giá trị biến lặp => Quay lại B2
- B5. Kết thúc vòng lặp
Flowchart của vòng lặp for

Chi tiết giải thích quy trình hoạt động của vòng lặp for có ở video bài học cũng như ví dụ dưới đây.
Code minh họa vòng lặp for trong C
Bài tập 1.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
/* In ra 3 dòng chữ "Hoc C ba dao tai Lap trinh khong kho!" */ #include <stdio.h> int main(){ for(int i = 0; i < 3; i++){ printf("Hoc C ba dao tai Lap trinh khong kho!\n"); } // Continue ... printf("Ket thuc vong lap!\n"); } /* Giải thích: B1. Gán biến lặp i = 0 B2. Kiểm tra điều kiện (i = 0) < 3 => Đúng B3. Do kiểm tra điều kiện đúng => Thực hiện thân vòng lặp for B4. Gọi tới (i++) => tăng i lên 1 đơn vị => i = 1 B5. Kiểm tra điều kiện (i = 1) < 3 => Đúng B6. Do kiểm tra điều kiện đúng => Thực hiện thân vòng lặp for B7. Gọi tới (i++) => tăng i lên 1 đơn vị => i = 2 B8. Kiểm tra điều kiện (i = 2) < 3 => Đúng B9. Do kiểm tra điều kiện đúng => Thực hiện thân vòng lặp for B10. Gọi tới (i++) => tăng i lên 1 đơn vị => i = 3 B11. Kiểm tra điều kiện (i = 3) < 3 => Sai => Kết thúc vòng lặp */ |
Kết quả chạy:
1 2 3 4 |
Hoc C ba dao tai Lap trinh khong kho! Hoc C ba dao tai Lap trinh khong kho! Hoc C ba dao tai Lap trinh khong kho! Ket thuc vong lap! |
Bài tập 2.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
/* In ra các số trong [a, b] biết 0 < a <= b */ #include <stdio.h> int main(){ int a = 4; int b = 9; for(int i = a; i <= 9; i++){ printf("\t%d", i); } } |
Kết quả chạy chương trình:
1 2 3 |
[email protected]:~/Downloads/c-tutorial/day_16$ g++ ForLoopEx2.cpp -o ForLoopEx2 [email protected]:~/Downloads/c-tutorial/day_16$ ./ForLoopEx2 4 5 6 7 8 9 |
Bài tập 3.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
/* Tính tổng các số trong [a, b] với 0 < a <= b */ #include <stdio.h> int main(){ int a = 5; int b = 10; int sum = 0; // cần khởi tạo giá trị for(int i = a; i <= b; i++){ sum += i; // sum = sum + i } printf("Sum = %d", sum); } |
Kết quả chạy:
1 2 3 |
[email protected]:~/Downloads/c-tutorial/day_16$ g++ ForLoopEx3.cpp -o ForLoopEx3 [email protected]:~/Downloads/c-tutorial/day_16$ ./ForLoopEx3 Sum = 45 |
Bài tập luyện tập vòng lặp for
- Nhập vào số nguyên dương n, 0 < n < 10. In ra hình vuông được tạo thành bởi các ký tự “*” có kích thước n x n.
- Viết chương trình in ra bảng cửu chương
- Và vô số bài tập về vòng lặp khác có tại Luyện Code Online