Continue trong C và cách bỏ qua vòng lặp

Chỉ dẫn cách sử dụng lệnh continue trong C. Bạn sẽ học được cách dùng lệnh continue để bỏ qua lượt lặp bây giờ của vòng lặp trong C sau bài học này.

Lệnh continue trong C

Lệnh continue trong C được sử dụng để bỏ qua lượt lặp bây giờ và khởi đầu lượt lặp tiếp theo của vòng lặp trong C . Các vòng lặp trong C như vòng lặp while hoặc vòng lặp for sẽ bỏ qua lượt lặp bây giờ khi lệnh continue được thực hiện. Toàn bộ các giải quyết sót lại đằng sau lệnh continue trong lượt lặp bây giờ đều bị bỏ qua và chương trình khởi đầu lượt lặp tiếp theo.

Cú pháp của lệnh continue trong C như sau:

continue;

Câu lệnh continue trong C được sử dụng kết phù hợp với câu lệnh if trong C và được diễn đạt trong khối lệnh while hoặc khối lệnh for giống như sau đây::

for (biểu thức khởi tạo ; biểu thức điều kiện ; biểu thức biến đổi ) {
    Câu lệnh 1 trong khối for ;
    Câu lệnh 2 trong khối for ;
    if (biểu thức điều kiện if){
        continue;
        }
    Câu lệnh 3 trong khối for ;
}

Để thấu hiểu hơn, tất cả chúng ta sẽ sử dụng lại chẳng hạn trong bài For trong C và cách giải quyết cụ thể. Tất cả chúng ta có một vòng lặp for để in ra màn hình 3 lần dòng hello như sau:


int

main

(

void

)

{


for

(

int

i =

1

; i <

4

; i++){


printf

(

"hello %dn"

, i);


}


printf

(

"bye"

);


}








Tất cả chúng ta sẽ dùng lệnh continue để bỏ qua và không in dòng chữ hello ở vòng lặp thứ 2 như sau:


int

main

(

void

)

{


for

(

int

i =

1

; i <

4

; i++){


if

(i ==

2

){


printf

(

"CONTINUE!n"

);


continue

;


}


printf

(

"hello %dn"

, i);


}


printf

(

"bye"

);


}



Khi đó vòng lặp for continue trong C sẽ chạy như sau:
Lượt lặp trước tiên:

  1. Khai báo biến i và gán giá trị ban đầu i = 1
  2. Biểu thức điều kiện For (i < 4) là TRUE nên thực thi vòng lặp
  3. Biểu thức điều kiện IF i == 2 là là False nên khối lệnh if (chứa lệnh continue) được bỏ qua
  4. Chạy lệnh printf("hello %dn", i);
  5. Biểu thức biến đổi tăng giá trị i lên 1 nhà cung cấp thành i=2

Lượt lặp thứ 2:

  1. Biểu thức điều kiện For (i < 4) là TRUE nên thực thi vòng lặp
  2. Biểu thức điều kiện IF i == 2 là True nên các lệnh trong khối if (bao gồm cả lệnh continue) được thực thi. Do lệnh continue được chạy nên các lệnh sót lại của vòng lặp đằng sau continue cũng sẽ được bỏ qua.
  3. Biểu thức biến đổi tăng giá trị i lên 1 nhà cung cấp thành i=3

Lượt lặp thứ 3:

  1. Biểu thức điều kiện For (i < 4) là TRUE nên thực thi vòng lặp
  2. Biểu thức điều kiện IF i == 2 là False nên khối lệnh if (chứa lệnh continue) được bỏ qua
  3. Chạy lệnh printf("hello %dn", i);
  4. Biểu thức biến đổi tăng giá trị i lên 1 nhà cung cấp thành i=4

Lượt lặp thứ 4:

  1. Biểu thức điều kiện i < 4 là FALSE nên thoát khỏi vòng lặp
Xem Thêm  Microsoft Office là gì và 6 công cụ Office bạn phải biết - microsoft office là gì

Ngoài vòng lặp:

  1. Chạy lệnh kế đến printf("bye"); sau khoảng thời gian thoát vòng lặp.

Kết quả, vòng lặp for ở trên sẽ in ra màn hình console như sau:

hello

1


CONTINUE!


hello

3


bye


Tất cả chúng ta có thể tổng quan giải quyết bằng sơ đồ khối của lệnh continue trong C khi sử dụng trong vòng lặp for như sau:

Lệnh continue trong C

Sử dụng lệnh continue bỏ qua lượt lặp bây giờ trong vòng lặp for C

Tất cả chúng ta sử dụng lệnh continue để bỏ qua lượt lặp bây giờ trong vòng lặp for C và thực hiện các lượt lặp tiếp theo. Lệnh while sẽ bỏ qua lượt lặp while bây giờ khi lệnh continue được thực hiện, toàn bộ các giải quyết sau lệnh continue đều bị bỏ qua và chương trình khởi đầu một lượt lặp mới.

Hãy xem chẳng hạn về vòng lặp for để tính tổng các số từ 1 đến 10. Nếu như không sử dụng lệnh continue thì chương trình sẽ chạy như sau:


int

main

(

void

)

{


int

sum =

;


for

(

int

i =

1

; i <=

10

; i++){


printf

(

"%dn"

,i);


sum += i ;


}


printf

(

"SUM=%d"

,sum);



}














Ngoài ra khi tất cả chúng ta sử dụng thêm lệnh continue và mong muốn bỏ qua vòng lặp khi biến num có giá trị bằng 2, chương trình sẽ không in ra giá trị num bằng 2 cũng như không tính num vào tổng chung như sau:


int

main

(

void

)

{


int

sum =

;


for

(

int

i =

1

; i <=

10

; i++){


if

(i ==

2

){


printf

(

"CONTINUE!n"

);


continue

;


}


printf

(

"%dn"

,i);


sum += i ;


}


printf

(

"SUM=%d"

,sum);



}














Bạn có thể thấy tất cả chúng ta đã bỏ qua vòng lặp for trong C bằng lệnh continue tại địa điểm num ==2 rồi phải không nào?

Xem Thêm  it indicates that the element is not yet

Về cách sử dụng vòng lặp for, hãy xem cụ thể tại nội dung Vòng lặp for trong C

Sử dụng lệnh continue để bỏ qua lượt lặp bây giờ trong vòng lặp while C

Tất cả chúng ta sử dụng lệnh continue để bỏ qua lượt lặp bây giờ trong vòng lặp while C và thực hiện các lượt lặp tiếp theo. Lệnh while sẽ bỏ qua lượt lặp while bây giờ khi lệnh continue được thực hiện, toàn bộ các giải quyết sau lệnh continue đều bị bỏ qua và chương trình khởi đầu một lượt lặp mới.

Hãy xem chẳng hạn về vòng lặp while để in ra các số từ 1 đến 10. Nếu như không sử dụng lệnh continue thì chương trình sẽ chạy như sau:


int

main

(

void

)

{


int

num =

1

;



while

(num <=

10

){


printf

(

"%dn"

,num);


num++;


}



}













Ngoài ra khi tất cả chúng ta sử dụng thêm lệnh continue và mong muốn bỏ qua vòng lặp khi biến num có giá trị bằng 2, chương trình sẽ không in ra giá trị num bằng 2 như sau:


int

main

(

void

)

{


int

num =

1

;



while

(num <=

10

){


if

(num ==

2

){


printf

(

"CONTINUE!n"

);


num++;


continue

;


}


printf

(

"%dn"

,num);


num++;


}



}













Bạn có thể thấy tất cả chúng ta đã bỏ qua vòng lặp while trong C bằng lệnh continue tại địa điểm num ==2 rồi phải không nào?

Về cách sử dụng vòng lặp while, hãy xem cụ thể tại nội dung Vòng lặp while trong C

Kết luận

Trên đây Kiyoshi đã chỉ dẫn bạn về cách sử dụng lệnh continue trong C rồi. Để nắm vững bài viết bài học hơn, bạn hãy thực hành viết lại các chẳng hạn của ngày lúc này nhé.

Xem Thêm  Top 17 kết quả tìm kiếm tải google chrome mới nhất 2019 mới nhất 2022

Và hãy cùng khám phá những học thức sâu hơn về C trong các bài học kế đến.

Viết một bình luận