image
1.Câu Lệnh Break
You are watching: Break Trong C
Break được sử dụng khi bạn muốn dừng vòng lặp (for, while, do-while) ngay lập tức, thông thường câu lệnh break thường đi kèm với 1 điều kiện kích hoạt, ví dụ như sau khi tìm được đáp án trong vòng lặp.
Khi câu lệnh break được thực thi thì các câu lệnh bên dưới break trong vòng lặp sẽ không được thực hiện nốt, vòng lặp sẽ kết thúc ngay tại ví trí của câu lệnh break
Với vòng lặp lồng nhau thì câu lệnh break có ý nghĩa với vòng lặp gần nhất chứa nó.
Xem xét ví dụ sau :
#include “iostream” using namespace std; int main(){ int n = 5; for(int i = 1; i <= 5; i++){ cout << i << ” ” << “28tech” << endl; if(i == 3){ break; } cout << “C++ programming !n”; } }
Output :
1 28tech C++ programming ! 2 28tech C++ programming ! 3 28tech
Giải thích :
- Vòng lặp 1 : i = 1, in ra 1 28tech, break chưa thực hiện nên tiếp tục in ra C programming !
- Vòng lặp 2 : i = 2, in ra 2 28tech, break chưa thực hiện nên tiếp tục in ra C programming !
- Vòng lặp 3 : i = 3, in ra 3 28tech, do if đúng nên câu lệnh break được thực thi, vòng lặp kết thúc ngay mà không thực hiện câu lệnh in ra C programming !
Ví dụ 1 : Tìm Ước Chung Lớn Nhất của 2 số a và b
Ý tưởng : Duyệt từ số nhỏ hơn trong 2 số a và b về 1, nếu gặp số đầu tiên cả a và b chia hết thì in ra và dừng vòng lặp
#include “iostream” using namespace std; int main(){ int a = 18, b = 12; int min = a < b ? a : b; for(int i = min; i >= 1; i-){ if((a % i == 0) && (b % i == 0)){ cout << i << ” “; break; } } }
Output :
6
Ví dụ 2 : In ra chữ số chẵn đầu tiên tính từ bên phải của số tự nhiên n
Ý tưởng : Tách từng chữ số của n bằng vòng lặp while, khi gặp chữ số chẵn thì dừng vòng lặp
#include “iostream” using namespace std; int main(){ int n = 12689791; while(n != 0){ if(n % 2 == 0){ // n % 10 % 2 cũng được cout << n % 10 << endl; break; } n /= 10; } }
Output :
8
Ví dụ 3 : Nhập 1 số nguyên từ bàn phím nếu nhập số âm thì yêu cầu nhập lại, nhập số không âm thì cho dừng
Ý tưởng : Dùng một vòng lặp lặp vĩnh viễn và kích hoạt câu lệnh break khi người dùng nhập số không âm
#include “iostream” using namespace std; int main(){ int n; while(true){ cout << “Nhap n : “; cin >> n; if(n >= 0){ break; } else{ cout << “Nhap lai !n”; } } }
Ví dụ 4 : Câu lệnh break với vòng for lồng nhau
#include “iostream” using namespace std; int main(){ for(int i = 1; i <= 2; i++){ for(int j = 1; j <= 5; j++){ cout << “28techn”; if(j == 2){ break; // có tác dụng dừng vòng for j } cout << “C++ programming !n”; } } }
Output :
See more : Sbt Lịch Sử 9
28tech C++ programming ! 28tech 28tech C++ programming ! 28tech
2.Câu Lệnh Continue
Câu lệnh continue khi được thực hiện nó sẽ bỏ qua các câu lệnh bên dưới nó trong vòng lặp và quay trở lại vòng lặp mới ngay.
Với vòng lặp lồng nhau thì câu lệnh continue có ý nghĩa với vòng lặp gần nhất chứa nó.
Xem xét ví dụ sau :
#include “iostream” using namespace std; int main(){ for(int i = 1; i <= 4; i++){ cout << “28techn”; if(i % 2 == 0){ continue; } cout << “C++n”; } }
Output :
28tech C++ 28tech 28tech C++ 28tech
Giải thích :
- Vòng lặp i = 1, in ra 28tech, kiểm tra if không đúng nên tiếp tục thực hiện câu lệnh in ra C
- Vòng lặp i = 2, in ra 28tech, kiểm tra if đúng nên bỏ qua câu lệnh in ra C bên dưới mà quay trở lại luôn cập nhật i
- Vòng lặp i = 3, in ra 28tech, kiểm tra if không đúng nên tiếp tục thực hiện câu lệnh in ra C
- Vòng lặp i = 4, in ra 28tech, kiểm tra if đúng nên bỏ qua câu lệnh in ra C bên dưới mà quay trở lại luôn cập nhật i
Ví dụ 1 : Nhập vào các số tự nguyên, kết thúc nhập bằng cách nhập số 0 và chỉ tính tổng các số nguyên dương được nhập
#include “iostream” using namespace std; int main(){ int tong = 0, n; while(true){ cout << “Nhap n : “; cin >> n; if(n < 0){ continue; // bỏ qua các lệnh bên dưới } else if(n == 0){ break; } tong += n; } cout << tong << endl; }
Video Tutorial :
O0Q5K0m6mvY
Source: https://tholansonnha.com
Category: Giáo Dục