Opimme silmukoista aiemmissa opetusohjelmissa. Tässä opetusohjelmassa opimme käyttämään tauko- ja jatko-lauseita esimerkkien avulla.
C-tauko
Break-lause lopettaa silmukan heti sen kohdatessa. Sen syntaksi on:
break;
Break-lauseita käytetään melkein aina if… else
silmukan sisällä.
Kuinka tauko-lause toimii?
Esimerkki 1: tauko-lause
// 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; )
Tuotos
Syötä n1: 2,4 Syötä n2: 4,5 Syötä n3: 3,4 Syötä n4: -3 Summa = 10,30
Tämä ohjelma laskee enintään 10 luvun summan. Miksi enintään 10 numeroa? Se johtuu siitä, että jos käyttäjä syöttää negatiivisen luvun, break
käsky suoritetaan. Tämä lopettaa for
silmukan ja summa näytetään.
C: ssä break
käytetään myös switch
lauseen kanssa. Tästä keskustellaan seuraavassa opetusohjelmassa.
C jatka
continue
Selvitys ohittaa nykyinen toisto silmukan ja jatkuu seuraavaan toistoon. Sen syntaksi on:
continue;
continue
Toteamus on lähes aina käytetään kanssa if… else
selvitys.
Kuinka jatkoilmoitus toimii?
Esimerkki 2: jatka lausetta
// 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; )
Tuotos
Syötä n1: 1.1 Syötä n2: 2.2 Syötä n3: 5,5 Syötä n4: 4,4 Syötä n5: -3,4 Syötä n6: -45,5 Syötä n7: 34,5 Syötä n8: -4,2 Syötä n9: -1000 Enter a n10: 12 Summa = 59,70
Tässä ohjelmassa, kun käyttäjä syöttää positiivisen luvun, summa lasketaan sum += number;
lauseella.
Kun käyttäjä syöttää negatiivisen luvun, continue
käsky suoritetaan ja se ohittaa negatiivisen luvun laskennasta.