Vòng lặp while
và do-while
là hai cấu trúc lặp cơ bản trong ngôn ngữ lập trình C, cho phép thực thi một khối mã nhiều lần dựa trên một điều kiện nhất định. Mặc dù tương tự nhau, chúng có một số khác biệt quan trọng về cách thức hoạt động.
Vòng lặp While
Vòng lặp while
kiểm tra điều kiện trước khi thực thi khối lệnh bên trong vòng lặp. Nếu điều kiện là đúng (true
), khối lệnh sẽ được thực thi. Sau đó, điều kiện sẽ được kiểm tra lại, và quá trình này lặp lại cho đến khi điều kiện trở nên sai (false
).
Cú pháp của vòng lặp while
:
while (điều kiện) {
// Khối lệnh để thực thi
}
Ví dụ, in ra số từ 1 đến 5 sử dụng vòng lặp while
:
#include <stdio.h>
int main() {
int i = 1; // Khởi tạo biến đếm
while (i <= 5) {
printf("%d\n", i);
i++; // Tăng biến đếm
}
return 0;
}
Vòng lặp Do-While
Khác với vòng lặp while
, vòng lặp do-while
đảm bảo rằng khối lệnh bên trong vòng lặp sẽ được thực thi ít nhất một lần, vì điều kiện được kiểm tra sau khi khối lệnh đã thực thi. Nếu điều kiện là đúng, khối lệnh sẽ được lặp lại; quá trình này tiếp tục cho đến khi điều kiện trở thành sai.
Cú pháp của vòng lặp do-while
:
do {
// Khối lệnh để thực thi
} while (điều kiện);
Ví dụ, in ra số từ 1 đến 5 sử dụng vòng lặp do-while
:
#include <stdio.h>
int main() {
int i = 1; // Khởi tạo biến đếm
do {
printf("%d\n", i);
i++; // Tăng biến đếm
} while (i <= 5);
return 0;
}
So Sánh While và Do-While
- Vòng lặp
while
: Kiểm tra điều kiện trước khi thực thi khối lệnh. Nếu điều kiện sai ngay từ đầu, khối lệnh bên trong vòng lặpwhile
sẽ không bao giờ được thực thi. - Vòng lặp
do-while
: Luôn thực thi khối lệnh ít nhất một lần trước khi kiểm tra điều kiện. Điều này hữu ích khi bạn muốn khối lệnh được thực thi ít nhất một lần dù điều kiện có thể là sai.
Lựa chọn giữa while
và do-while
phụ thuộc vào yêu cầu cụ thể của vấn đề và điều kiện khi bắt đầu vòng lặp.
Comments