Bài tập

Vòng lặp While trong lập trình C từ A đến Z

Huy Erick

C là một trong những ngôn ngữ lập trình ra đời sớm nhất trên thế giới, được phát triển bởi Dennis Ritchie từ những năm đầu 1970. Từ đó, C đã trở nên phổ biến...

C là một trong những ngôn ngữ lập trình ra đời sớm nhất trên thế giới, được phát triển bởi Dennis Ritchie từ những năm đầu 1970. Từ đó, C đã trở nên phổ biến và được sử dụng rộng rãi trên tất cả các hệ điều hành máy tính. Ngôn ngữ C được coi là ngôn ngữ mẹ trong lĩnh vực lập trình và là cơ sở cho nhiều ngôn ngữ khác như C++, Java và Python. Có nhiều ứng dụng chính của ngôn ngữ C như lập trình nhúng, xây dựng phần mềm hệ thống, phát triển ứng dụng máy tính, lập trình mạng và ứng dụng trong khoa học xử lý dữ liệu.

Vòng lặp While trong C

Khái niệm và cú pháp

Vòng lặp While là một trong ba cấu trúc vòng lặp trong ngôn ngữ lập trình c , cho phép lặp lại một đoạn mã nhiều lần dựa trên một điều kiện nào đó. Các tập lệnh bên trong vòng lặp While được thực thi miễn là điều kiện vẫn đúng. Ba cấu trúc lặp trong C bao gồm For loop, While loop và Do While loop. Trong số đó, While và For là vòng lặp kiểm soát đầu vào, vì chúng kiểm tra điều kiện trước khi thực thi, trong khi Do While kiểm tra điều kiện sau.

Cú pháp vòng lặp While trong C như sau:

while (điều kiện) {     // Khối mã cần lặp }

Flow Charts

Vòng lặp While hoạt động theo cấu trúc chặt chẽ từ trên xuống dưới. Cụ thể, quá trình hoạt động của vòng lặp While như sau:

  1. Khởi tạo vòng lặp While.
  2. Kiểm tra điều kiện: Điều này quyết định liệu các tập lệnh bên trong vòng lặp While có được thực thi hay không. Nếu điều kiện là sai, vòng lặp sẽ kết thúc. Nếu điều kiện là đúng, các tập lệnh bên trong vòng lặp sẽ được thực thi.
  3. Thực hiện tập lệnh bên trong vòng lặp: Đây là phần mã lệnh sẽ được thực thi khi điều kiện là đúng. Mã lệnh sẽ nằm trong dấu ngoặc nhọn {}. Sau khi thực hiện xong, chương trình sẽ quay lại bước kiểm tra điều kiện để tiếp tục vòng lặp.

Bài tập vòng lặp While trong C

Để hiểu rõ hơn về cách vận hành của vòng lặp While trong C, chúng ta sẽ thực hiện một số ví dụ đơn giản sau đây:

Ví dụ 1

Sử dụng vòng lặp While để in một dòng ký tự bất kỳ ra màn hình 5 lần (lặp lại khi i nhỏ hơn 5). Đoạn code có thể được viết như sau:

#include   int main() {     int i = 0;     while (i  5) {         printf("ICANTECH.vnn");         i++;     } }

Kết quả thu được là:

Ban đầu, chúng ta khởi tạo i=0 và lặp lại cho đến khi giá trị của i đạt 5. Sau mỗi lần in một dòng ký tự, giá trị của i sẽ được tăng lên 1. Sau 5 lần thực thi, giá trị của i sẽ là 6, không thỏa mãn điều kiện và vòng lặp sẽ kết thúc.

Ví dụ 2

Khi sử dụng vòng lặp While, có thể xảy ra trường hợp vòng lặp chạy không bao giờ dừng lại do điều kiện kiểm tra không tốt dẫn đến điều kiện luôn đúng. Hãy xem ví dụ sau:

#include   int main() {     int i1 = 1;     int i2 = 1;     while (i1  2) {         i2 = i2 + 1;         printf("ICANTECH.VN");     } }

Kết quả:

Vì điều kiện i1 2 luôn đúng trong ví dụ này, và phần cập nhật sau đó chỉ sử dụng biến i2 = i2 + 1, giá trị của i1 sẽ luôn giữ nguyên là 1, điều này dẫn đến điều kiện trong vòng lặp While luôn đúng.

Ví dụ 3

Hãy thực hiện một ví dụ phức tạp hơn: Tính tổng của tất cả các số mà người dùng nhập từ bàn phím, khi tổng này vẫn nhỏ hơn 2712. Đoạn code có thể được viết như sau:

#include   int main() {     double number, sum = 0;     while (sum  2712) {         printf("Hãy nhập một số: ");         scanf("%lf", &number);         sum += number;         printf("Tổng = %.2lf\n", sum);     }     return 0; }

Kết quả:

Trong ví dụ này, chúng ta sử dụng tổng (sum) 2712 là điều kiện để vòng lặp While thực thi lệnh tính tổng. Hàm printf được sử dụng để hiển thị lời đề nghị nhập một số từ người dùng. Hàm scanf được sử dụng để đọc số từ bàn phím. Khi tổng vẫn nhỏ hơn 2712, người dùng có thể nhập thêm số mới. Trong ví dụ minh họa, khi tổng đạt 6923.76 > 2712, vòng lặp sẽ dừng lại.

Lời kết

Qua bài viết này, chúng ta đã tìm hiểu về cú pháp và flow charts của vòng lặp While trong ngôn ngữ lập trình c thông qua các ví dụ cụ thể. Hi vọng rằng bạn đã áp dụng những kiến thức này và trở thành một chuyên gia trong việc sử dụng vòng lặp While. Chúc bạn thành công!

Nguồn ảnh: ICANTECH.

1