C przerwij i kontynuuj

Spisie treści

Dowiedzieliśmy się o pętlach w poprzednich samouczkach. W tym samouczku nauczymy się używać instrukcji break i continue na podstawie przykładów.

Przerwa C

Instrukcja break kończy pętlę natychmiast po jej napotkaniu. Jego składnia to:

 break;

Instrukcja break jest prawie zawsze używana z if… elseinstrukcją wewnątrz pętli.

Jak działa instrukcja break?

Przykład 1: instrukcja break

 // Program to calculate the sum of numbers (10 numbers max) // If the user enters a negative number, the loop terminates #include 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 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; )

Wynik

 Podaj n1: 2,4 Podaj n2: 4,5 Podaj n3: 3,4 Podaj n4: -3 Suma = 10,30

Ten program oblicza sumę maksymalnie 10 liczb. Dlaczego maksymalnie 10 liczb? Dzieje się tak, ponieważ jeśli użytkownik wprowadzi liczbę ujemną, breakinstrukcja zostanie wykonana. To zakończy forpętlę i zostanie wyświetlona suma.

W języku C breakjest również używane z switchinstrukcją. Zostanie to omówione w następnym samouczku.

C kontynuuj

continueStwierdzenie pomija bieżącej iteracji pętli i kontynuuje następnej iteracji. Jego składnia to:

 continue;

To continuestwierdzenie jest prawie zawsze używane razem z nim if… else.

Jak działa instrukcja Continue?

Przykład 2: kontynuacja instrukcji

 // 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 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; )

Wynik

 Podaj n1: 1,1 Podaj n2: 2,2 Podaj n3: 5,5 Podaj n4: 4,4 Podaj n5: -3,4 Podaj n6: -45,5 Podaj n7: 34,5 Podaj n8: -4,2 Podaj n9: -1000 Podaj a n10: 12 Suma = 59,70

W tym programie, gdy użytkownik wprowadzi liczbę dodatnią, suma jest obliczana za pomocą sum += number;instrukcji.

Gdy użytkownik wprowadzi liczbę ujemną, continueinstrukcja jest wykonywana i pomija liczbę ujemną z obliczenia.

Interesujące artykuły...