Chào các bạn đây là bài số 9, trong bài viết này mình sẽ chia sẻ cho các bạn về for loop trong lập trình C cho người mới bắt đầu.
Ở bài số 8, chúng ta tìm hiểu while loop trong C cơ bản. Nếu các bạn chưa xem bài 8 thì xem lại tại đây nhé.
Trong lập trình loop (vòng lặp) là được sử dụng để lặp đi lặp lại một khối code cho đến khi nó thỏa một điều kiện nào đó.
Trong bài này chúng ta sẽ đi tìm hiểu for loop.

1. For Loop trong lập trình C
The syntax of the for
loop is:
for (statement 1; statement 2; statement 3) {
// code block to be executed
}
2. For Loop làm việc như thế nào ?
Bây giờ chúng ta dựa vào syntax để giải thích xem for loop này nó hoạt động như thế nào nhé.
- Khởi tạo statement 1 và chỉ thực hiện một lần.
- Kiểm tra statement 2, nếu statement 2 có giá trị là true thì nó sẽ thực thi khối lệnh trong for loop, và update lại statement 3.
- Sau đó kiểm tra statement 2 một lần nữa giống như ở bước thứ 2, cho đến khi statement 2 có giá trị là false.
- Khi kiểm tra statement 2 có giá trị là false thì kết thúc for loop.
3. For Loop Flowchart

Ví dụ 1: for loop

// Print numbers from 1 to 10
#include <stdio.h>
int main() {
int i;
for (i = 1; i < 11; ++i)
{
printf("%d ", i);
}
return 0;
}
Kết quả :

Giải thích
Chương trình bên trên sẽ in ra từ 1 cho đến 10.
- Khởi tạo biến i = 1.
- Kiểm tra biến i < 11 hay không? Trong trường hợp này i lúc này đang là 1, 1 < 11 là true, thì sẽ in ra i, nghĩa là sẽ in ra số 1.
- Update statement ++i thì được thực hiện. Lúc này thì biến i có giá trị là 2 ( i=2), kiểm tra statement 1 thêm 1 lần nữa ( 2 < 11 ), nếu là true , thì sẽ in ra số 2.
- Update statement ++i thì được thực hiện thêm một lần nữa. Lúc này thì biến i có giá trị là 3 ( i=3), kiểm tra statement 1 thêm 1 lần nữa ( 3 < 11 ), nếu là true , thì sẽ in ra số 3.
- Thực hiện ở bước 2 và bước 3 cho đến khi i đạt tới giá trị là 11.
- Khi i có giá trị 1 ( i= 11) thì i <11 có giá trị là false, for loop sẽ kết thúc
Ví dụ 2: for loop

// Program to calculate the sum of first n natural numbers
// Positive integers 1,2,3...n are known as natural numbers
#include <stdio.h>
int main()
{
int num, count, sum = 0;
printf("Enter a positive integer: ");
scanf("%d", &num);
// for loop terminates when num is less than count
for(count = 1; count <= num; ++count)
{
sum += count;
}
printf("Sum = %d", sum);
return 0;
}
Kết quả :

Giải thích :
Chương trình trên sẽ tính tổng mà người dùng nhập vào
- Khởi tạo num, count, sum và gán giá trị ban đâu là 0.
- Chờ người dùng nhập &num vào . (Trường hợp này người dùng nhập vào là 20 )
- Bắt đầu xử lý vòng lặp for
- Khởi tạo count = 1.
- Kiểm tra count <= num (check count có nhỏ hơn hoặc bằng số mà người dùng nhập vào không? count <=20 ?)
- If count <= 20 là true, thì thực thi sum += count (tương đương sum = sum + count <==> sum = 0 + 1 = 1 )
- ++count tăng count lên 1, count lúc này là 2. Kiểm tra if count <= 20 là true, thì thực thi sum += count (tương đương sum = sum + count <==> sum = 1 + 2 = 3 ).
- Tiếp tục bước 3-4 cho đến khi count = 21.
- Khi count = 21, tiếp tục kiểm tra if count <= 20 là false, kết thúc for loop.
- In ra sum và kết thúc chương trình.
Tổng kết
Chúng ta vừa tìm hiểu xong for loop trong lập trình c, ở bài trước chúng ta cũng đã tìm hiểu while loop. 2 vòng lặp này thì được sử dụng rất nhiều trong lập trình. Tùy vào bài toán mà chúng ta sẽ sử dụng cái nào cho hợp lý.
Mình thấy for loop này có một vài dạng, một vài biến thể khác nhau. Tuy nhiên giới hạn của bài này chỉ ở mức cơ bản dành cho những người mới bắt đầu. Trước tiên chúng ta cần hiểu phần cơ bản trước, khi chúng ta hiểu những phần cơ bản thì sau này có gặp những dạng biến thể khác thì chúng ta cũng dễ dàng biết cách xử lý.
Trên đây là ý kiến cá nhân của mình, nếu các bạn có ý kiến khác thì xin vui lòng comment bên dưới nhé.
Chúc các bạn thực hành thành công.
Xem video và làm theo ví dụ để hiểu hơn tại đây nhé:
Nguồn tham khảo :