Chào các bạn đây là bài số 8, trong bài viết này mình sẽ chia sẻ cho các bạn về while loop trong lập trình C cho người mới bắt đầu.
Ở bài số 7, chúng ta tìm hiểu câu lệnh Switch case trong C cơ bản. Nếu các bạn chưa xem bài 7 thì xem lại tại đây nhé.
1. Loop là gì? (vòng lặp là gì?)
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 while loop và do…while loop.

2. While Loop trong lập trình C hoạt động như thế nào?
The syntax of the while
loop is:
while (condition) {
// the body of the loop
}
2.1 While Loop làm việc như thế nào ?
- Trước tiên while loop sẽ kiểm tra condition.
- Nếu condition là true thì nó sẽ thực thi đoạn code bên trong vòng lặp while. (Phần này cũng giống như if else mà những bài trước chúng ta đã tìm hiểu). Nếu các bạn chưa xem bài if else thì có thể xem tại đây: câu lệnh rẽ nhánh if else trong c nhé.
- Vòng lặp while sẽ được xử lý đến khi điều kiện condition = false.
- Nếu vòng lặp kiểm tra condition = false thì sẽ kết thúc vòng lặp.
2.2 While Loop Flowchart

2.3 Ví dụ : while loop
// Print numbers from 1 to 5
#include <stdio.h>
int main() {
int i = 1;
while (i <= 5) {
printf("%d\n", i);
++i;
}
return 0;
}
Kết quả :

Giải thích thêm ví dụ bên trên để chúng ta hiểu hơn nhé:
Trong chương trình ví dụ bên trên sẽ in ra số từ 1 đến 5
- Trước tiên ta khởi tạo biến i = 1 là kiểu số nguyên (int).
- Khi i=1, chương trình vòng lặp while sẽ kiểm tra i<=5 hay không, nếu i<=5 thì condition là true. Do đó những khối code trong vòng lặp while sẽ được thực thi. Trên màn hình sẽ in ra 1 và giá trị của biến i sẽ tăng lên là 2.
- Bây giờ i=2, chương trình vòng lặp while sẽ kiểm tra i<=5 hay không thêm một lần nữa, nếu i<=5 thì condition là true một lần nữa. Do đó những khối code trong vòng lặp while sẽ được thực thi thêm một lần nữa. Trên màn hình sẽ in ra 2 và giá trị của biến i sẽ tăng lên là 3.
- Chương trình sẽ xử lý đến khi i=6, sau đó sẽ kiểm tra condition một lần nữa, lúc này condition i<=5 là false và sẽ kết thúc vòng lặp.
3. Do While Loop trong lập trình C
Do While Loop thì cũng giống như While Loop, nhưng khác nhau một chút. vòng lặp do-while trong c thì sẽ thực thi khối lệnh bên trong vòng lặp ít nhất một lần, sau đó mới kiểm tra condition là true hay false.
The syntax of the do...while
loop is:
do {
// the body of the loop
}
while (condition);
3.1 Do While Loop làm việc như thế nào ?
- Đoạn code trong vòng lặp sẽ được thực thi một lần. Sau đó sẽ kiểm tra condition.
- Nếu condition = true, thì đoạn code trong vòng lặp sẽ được thực thi thêm một lần nữa, và tiếp tục kiểm tra condition một lần nữa.
- Vòng lặp sẽ xử lý cho đến khi condition = false.
- Nếu condition = false thì sẽ thoát khỏi vòng lặp.
3.2 Do While Loop Flowchart

3.3 Ví dụ : do while loop
// Program to add numbers until the user enters zero
#include <stdio.h>
int main() {
double number, sum = 0;
// the body of the loop is executed at least once
do {
printf("Enter a number: ");
scanf("%lf", &number);
sum += number;
}
while(number != 0.0);
printf("Sum = %.2lf",sum);
return 0;
}
Kết quả :

Giải thích code ví dụ bên trên
Trong chương trình do while ở ví dụ bên trên là sau khi người dùng nhập vào số 0 thì tính tổng tất cả các số mà người dùng nhập vào.
- Trước tiên chúng ta khai báo biến number và sum là kiểu số double , và gán biến sum = 0.
- Thực hiện khối code trong do do người dùng nhập vào, và tính sum += number.
- Kiểm tra condition xem người dùng nhập vào có phải là số 0 hay không?
- Nếu number!=0 thì condition = true ,thực hiên khối code trong do thêm 1 lần nữa
- Tiếp tục kiểm tra người dùng nhập vào có phải là số 0 hay không?
- Tiến trình này xử lý cho đến khi người dùng nhập vào là số 0.
- Nếu number = 0 thì condition = false, và sẽ thoát khỏi vòng lặp , in ra sum và kết thúc chương trình.
4. Sự khác nhau của while loop và do while loop
Chúng ta hiểu như thế này:
While loop là kiểm tra condition trước, nếu condition =true thì mới thực hiện khối lênh bên trong.
Do while loop là thực hiện khối lệnh bên trong ít nhất một lần rồi mới kiểm tra condition, nếu condition = true thì khối lênh bên trong sẽ thực hiện thêm lần nữa.
5. Tổng kết
Trong lập trình thì thường xuyên sử dụng vòng lặp rất nhiều, ở bài này chúng ta chỉ tìm hiểu While Loop trong lập trình C.
Ở bài sau chúng ta sẽ đi tìm hiểu thêm một vòng lặp mà cũng rất thường sử dụng trong lập trình, đó là vòng lặp for.
Khi các bạn hiểu được các vòng lặp nó hoạt động như thế nào thì trong lập trình việc giải các bài toán cũng trở nên dễ dàng hơn.
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é.
Qua bài này mình hi vọng có thể giúp cho các bạn hiểu được vòng lặp while và do while nó hoạt động như thế nào. Từ đó tùy vào trường hợp , tùy vào bài toán mà các bạn có thể áp dụng vào dự án thực tế một các tốt nhất có thể.
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 :