Bài tập câu lệnh lặp nâng cao c++

Trong vài tình huống, bạn cần thực hiện một đoạn code vài lần với những câu lệnh được thực hiện một cách trình tự. Thay vì tốn thời gian và công sức để làm thủ, ngôn ngữ lập trình C đã cung cấp cho chúng ta nhiều cấu trúc điều khiển cho phép bạn thực hiện nó một cách đơn giản và nhanh chóng. Vòng lặp (loop) là một trong số đó. Vậy, vòng lặp là gì? Có bao nhiêu lệnh vòng lặp trong C? Khám phá ngay bạn nhé!

Bài tập câu lệnh lặp nâng cao c++

Vòng lặp và các lệnh vòng lặp trong C

1. Vòng lặp (Loop) trong ngôn ngữ C

Cấu trúc vòng lặp trong C thực hiện các chuỗi câu lệnh nhiều lần cho đến khi điều kiện trở thành false (sai). Vòng lặp trong C phải bao gồm hai phần:

  • Thân vòng lặp.
  • Câu lệnh điều khiển.

Trong đó, câu lệnh điều khiển là sự kết hợp của một số điều kiện giúp thân vòng lặp thực thi cho đến khi điều kiện chỉ định trở thành sai.

Tóm lại, mục đích của vòng lặp C chính là lặp đi lặp lại cùng một đoạn code nhiều lần.

2. Các loại vòng lặp trong C

Tùy thuộc vào vị trí của câu lệnh điều khiển, cấu trúc vòng lặp trong C có thể được phân thành 2 loại:

  • Các vòng lặp được kiểm soát đầu vào (Entry controlled loop): là các vòng lặp mà điều kiện cần kiểm soát đặt ở đầu vòng lặp. Vòng lặp while và for thuộc dạng này.
  • Các vòng lặp được kiểm soát đầu ra (Exit controlled loop): Là những vòng lặp đặt điều kiện cần kiểm soát ở cuối. Vòng lặp do-while thuộc dạng này.

Bài tập câu lệnh lặp nâng cao c++

Có một lưu ý chính là điều kiện điều khiển phải được xác định và chỉ định rõ. Nếu không, vòng lặp sẽ thực hiện vô số lần. Các vòng lặp không ngừng thực hiện và xử lý vô số lần cấu trúc câu lệnh được gọi là vòng lặp không biết trước lần lặp (vòng lặp vô hạn).

Dưới đây là một số đặc điểm của vòng lặp vô hạn:

- Không có chỉ định về điều kiện chấm dứt.

- Các điều kiện chỉ định không đáp ứng.

3 lệnh vòng lặp trong C

Ngôn ngữ lập trình C cung cấp cho chúng ta 3 loại lệnh vòng lặp:

  1. Vòng lặp while: trong ngôn ngữ lập trình C thực hiện lặp đi lặp lại một lệnh mục tiêu khi điều kiện đã cho vẫn còn đúng.
  2. Vòng lặp do-while: tương tự với vòng lặp while. Tuy nhiên, vòng lặp này sẽ thực hiện vòng lặp ít nhất một lần.
  3. Vòng lặp for: sau mỗi lần thực hiện, hệ thống sẽ thực hiện đối chiếu, kiểm tra với giá trị cố định. Vòng lặp for sẽ dừng lại khi kết quả trả về = false.

1. Vòng lặp while trong C

While là vòng lặp đơn giản nhất trong các lệnh vòng lặp C. Cú pháp vòng lặp while trong C như sau:

while (condition) {

statements;

}

While thuộc về vòng lặp kiểm soát đầu vào. Trong vòng lặp này, một điều kiện được đánh giá trước khi xử lý thân vòng lặp. Một điều kiện đúng khi và chỉ khi thân vòng lặp được thực thi. Tiếp đó, điều khiển sẽ quay trở lại lúc đầu và kiểm tra đối chiếu với điều kiện xem nó có đúng không. Quá trình này sẽ được lặp đi lặp lại cho đến khi cho kết quả false. Khi đó, câu lệnh điều khiển sẽ thoát khỏi vòng lặp.

Sau khi thoát khỏi vòng lặp, điều khiển sẽ chuyển đến các cấu trúc tiếp theo. Có một lưu ý nhỏ là thân vòng lặp có thể chứa nhiều hơn một câu lệnh. Trong trường hợp nó chỉ chứa duy nhất một cấu trúc/ câu lệnh, bạn có thể không cần sử dụng dấu “{}”.

Trong vòng lặp while, nếu điều kiện sai, thân vòng lặp sẽ không thực hiện.

Ví dụ minh họa:

include

include

int main()

{

int num=1; //initializing the variable

while(num<=10) //while loop with condition

{

printf("%d\n",num);

num++; //incrementing operation

}

return 0;

}

Kết quả trả về:

Trong ví dụ trên, dãy số từ 1 đến 10 được tạo ra bằng vòng lặp while:

  • Một biến gọi là num đã được khởi tạo với giá trị = 1. Tiếp đó, hàm print được thực hiện từ 1 đến 10 với biến được khởi tạo = 1.
  • Trong vòng lặp while, một điều kiện đã được cung cấp (num <= 10). Điều này có nghĩa là vòng lặp sẽ kết thúc khi giá trị của num = 10.
  • Trong phần thân vòng lặp chứa hàm print và toán tử tăng để gia tăng giá trị mỗi lần thực hiện một vòng lặp. Giá trị ban đầu của num = 1. Sau khi thực hiện vòng lặp đầu tiên, nó sẽ thành 2 và trong lần tiếp theo sẽ là 3…Quá trình này tiếp tục cho đến khi giá trị trở thành 10, vòng lặp kết thúc.

2. Vòng lặp do - while trong C

Do - while còn được gọi là vòng lặp được kiểm soát đầu ra. Vòng lặp này khá giống vòng lặp while ngoại trừ điều kiện được thực hiện sau phần thân vòng lặp.

Cú pháp câu lệnh của vòng lặp do-while trong C như sau:

do {

statements

} while (expression);

Như bạn có thể thấy, thân vòng lặp while được thực khi và chỉ khi điều kiện đúng. Ở trường hợp ngược lại, nếu chúng ta muốn thực thi vòng lặp ít nhất một lần, ngay cả khi điều kiện sai, bạn có thể sử dụng vòng lặp do-while.

Trong vòng lặp do-while, thân vòng lặp luôn được thực thi ít nhất một lần. Sau đó, nó sẽ tiến đến giai đoạn kiểm tra điều kiện. Nếu điều kiện đúng, thân vòng lặp sẽ được thực thi thêm một lần nữa. Nếu sai, điều khiển sẽ thoát ra khỏi vòng lặp.

Tương tự như vòng lặp while, khi điều khiển ra khỏi vòng lặp, các câu lệnh ngay sau vòng lặp sẽ được thực thi.

Thêm một sự khác biệt giữa vòng lặp while và vòng lặp do-while chính là cú pháp câu lệnh. Với vòng lặp while, while sẽ được viết ở đầu. Trong khi với do-while, điều kiện while được đặt ở cuối và kết thúc bằng dấu (;).

Ví dụ minh họa:

include

include

int main()

{

int num=1; //initializing the variable

do //do-while loop

{

printf("%d\n",2*num);

num++; //incrementing operation

}while(num<=10);

return 0;

}

Kết quả trả về:

Trong ví dụ trên, chúng ta đã sử dụng hàm print bảng cửu chương 2 bằng vòng lặp do-while như bên dưới:

  • Đầu tiên, khởi tạo biến “num” với giá trị = 1. Tiếp đó, viết vòng lặp do-while.
  • Trong một vòng lặp, hàm print sẽ in các chuỗi giá trị bằng cách nhân giá trị của num với 2.
  • Sau mỗi lần tăng, giá trị của num sẽ tăng lên 1 và nó sẽ được in ra màn hình.
  • Ban đầu, giá trị của num là 1. Trong thân vòng lặp, hàm print sẽ được thực thi rằng cách hiện kết quả 2*num (trong đó num =1). Và nó sẽ tiếp tục cho đến khi num = 10, vòng lặp này sẽ kết thúc và câu lệnh sau vòng lặp sẽ được thực hiện.

Kết luận:

Trên đây là khái niệm vòng lặp cùng hai loại vòng lặp phổ biến, while và do - while. Cùng chờ đón thêm một loại vòng lặp cùng 2 lệnh phổ biến dùng C trong kỳ tới bạn nhé!