84
/ 100
This entry is part 19 of 69 in the series Học C Không Khó
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.
Tóm Tắt
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
/*
Kiểm tra một số nguyên mà nó được tạo thành từ các số chẵn hay không?
Ví dụ: 8, 222, 246, …
*/
Ý tưởng giải: Các bạn lấy từng chữ số của số đó ra kiểm tra. Nếu chỉ cần gặp 1 chữ số là số lẻ thì có thể kết luận luôn là “Sai”. Ngược lại nếu duyệt qua tất cả các chữ số mà không thấy chữ số lẻ nào thì kết luận là “Đúng”
Sau đây là lời giải tham khảo sử dụng lệnh break:
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#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:
0
1
2
3
4
5
6
7
8
PS G:\c_cources\day_21> .\BreakStatement.exe
Nhap number = 12345
Co chu so le!
https://nguyenvanhieu.vn/wp-admin/post.php?post=4339&action=edit#
PS G:\c_cources\day_21> .\BreakStatement.exe
Nhap number = 2222
Toan chu so chan!
Cách hoạt động của lệnh continue
Kết quả chạy chương trình:
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
/*
In ra các chữ số chẵn từ 1 đến 100.
*/
Gợi ý: Duyệt từ 1 đến 100 sử dụng vòng lặp bất kỳ, nếu giá trị lặp hiện tại là số lẻ thì dùng continue để bỏ qua. Phía dưới continue sẽ là lệnh printf
để in ra giá trị.
Lời giải tham khảo:
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#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:
0
1
2
3
PS G:\c_cources\day_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
Kết quả chạy chương trình: