Lệnh break và continue là các lệnh kiểm soát vòng lặp, 2 lệnh này cho phép chúng ta quản lý và làm việc với vòng lặp trở nên hiệu quả hơn. Bài viết này Lập trình không khó sẽ cùng các bạn độc giả tìm hiểu về lệnh break
, lệnh continue
. Mình sẽ trình bày chi tiết cách hoạt động của mỗi lệnh và lấy ví dụ cụ thể, thực tế để các bạn hiểu được vai trò của 2 lệnh này.
Video hướng dẫn lệnh break và continue
Trong vòng lặp, lệnh break
và continue
khi xuất hiện thì sẽ được bao bọc bởi một khối lệnh if
, bởi vì nếu không có lệnh if
bao bọc thì vòng lặp sẽ trở nên vô dụng. Để hiểu rõ hơn bạn hãy xem video dưới đây nhé.
Cách hoạt động của lệnh break
Một vòng lặp đang thực hiện nếu gặp lệnh break
sẽ thoát vòng lặp ngay lập tức. Xem sơ đồ mô tả luồng hoạt động của vòng lặp khi có lệnh break
dưới đây:
Bài tập thực hành
#include <stdio.h> int main(){ int number; printf("nNhap number = "); scanf("%d", &number); bool allEven = true; // Giả sử ban đầu là đúng int last; while(number > 0){ last = number % 10; // lấy c/số cuối của number if(last % 2 == 1){ allEven = false; break; // thoát vòng lặp } number /= 10; // bỏ chữ số cuối của number } if(allEven){ printf("nToan chu so chan!"); }else{ printf("nCo chu so le!"); } }
Kết quả chạy chương trình:
PS G:c_courcesday_21> .BreakStatement.exe Nhap number = 12345 Co chu so le! https://nguyenvanhieu.vn/wp-admin/post.php?post=4339&action=edit# PS G:c_courcesday_21> .BreakStatement.exe Nhap number = 2222 Toan chu so chan!
Cách hoạt động của lệnh continue
Nếu một vòng lặp đang chạy mà gặp lệnh continue
, tất cả các lệnh trong thân vòng lặp nằm phía dưới lệnh continue
sẽ bị bỏ qua ở lần lặp hiện tại. Vòng lặp sẽ chuyển sang kiểm tra điều kiện và tiếp tục lặp(nếu điều kiện lặp còn thỏa mãn).
Bài tập thực hành
printf
để in ra giá trị.#include <stdio.h> /* In ra các chữ số chẵn từ 1 đến 100. */ int main(){ for(int i = 0; i <= 100; i++){ if(i % 2 != 0){ continue; } printf("%d ", i); } }
Kết quả chạy chương trình:
PS G:c_courcesday_21> .CotinueStatement.exe 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98 100
Trả lời