Chúng ta đã tìm hiểu về các vòng lặp trong các bài hướng dẫn trước. Trong hướng dẫn này, chúng ta sẽ học cách sử dụng các câu lệnh break và continue với sự trợ giúp của các ví dụ.
C break
Câu lệnh break kết thúc vòng lặp ngay lập tức khi nó gặp phải. Cú pháp của nó là:
break;
Câu lệnh break hầu như luôn được sử dụng với if...else
câu lệnh bên trong vòng lặp.
Câu lệnh break hoạt động như thế nào?
Làm việc trong thời gian nghỉ ở C
Ví dụ 1: câu lệnh break
// Program to calculate the sum of numbers (10 numbers max)
// If the user enters a negative number, the loop terminates
#include <stdio.h>
int main() {
int i;
double number, sum = 0.0;
for (i = 1; i <= 10; ++i) {
printf("Enter n%d: ", i);
scanf("%lf", &number);
// if the user enters a negative number, break the loop
if (number < 0.0) {
break;
}
sum += number; // sum = sum + number;
}
printf("Sum = %.2lf", sum);
return 0;
}
Đầu ra
Enter n1: 2.4 Enter n2: 4.5 Enter n3: 3.4 Enter n4: -3 Sum = 10.30
Chương trình này tính tổng của tối đa 10 số. Tại sao tối đa là 10 số? Đó là bởi vì nếu người dùng nhập một số âm, break
câu lệnh sẽ được thực thi. Điều này sẽ kết thúc for
vòng lặp và tổng được hiển thị.
Trong C, break
cũng được sử dụng với switch
câu lệnh. Điều này sẽ được thảo luận trong hướng dẫn tiếp theo.
C continue
Câu continue
lệnh bỏ qua lần lặp hiện tại của vòng lặp và tiếp tục với lần lặp tiếp theo. Cú pháp của nó là:
continue;
Câu continue
lệnh hầu như luôn được sử dụng với if...else
câu lệnh.
Câu lệnh continue hoạt động như thế nào?
Làm việc của Tiếp tục trong C
Ví dụ 2: câu lệnh continue
// Program to calculate the sum of numbers (10 numbers max)
// If the user enters a negative number, it's not added to the result
#include <stdio.h>
int main() {
int i;
double number, sum = 0.0;
for (i = 1; i <= 10; ++i) {
printf("Enter a n%d: ", i);
scanf("%lf", &number);
if (number < 0.0) {
continue;
}
sum += number; // sum = sum + number;
}
printf("Sum = %.2lf", sum);
return 0;
}
Đầu ra
Enter n1: 1.1 Enter n2: 2.2 Enter n3: 5.5 Enter n4: 4.4 Enter n5: -3.4 Enter n6: -45.5 Enter n7: 34.5 Enter n8: -4.2 Enter n9: -1000 Enter n10: 12 Sum = 59.70
Trong chương trình này, khi người dùng nhập một số dương, tổng được tính bằng sum += number;
câu lệnh.
Khi người dùng nhập một số âm, continue
câu lệnh được thực thi và nó sẽ bỏ qua số âm khỏi phép tính.