INSTRUCŢIUNEA BREAK
Dupa cum am mai mentionat, iesirea dintr-o bucla se face prin test la începutul buclei (for si while) sau la sfârsit (do). Sunt însa situatii când trebuie sa iesim din bucla din interiorul 353h75d corpului acesteia. Se pot face asemenea iesiri din bucla utilizând instructiunea:
break;
Deci, instructiunea break determina iesirea din cea mai interioara bucla for, while sau do în care este folosita. De asemenea, break determina si iesirea din corpul unui switch.
Deja am prezentat un exemplu de utilizare a instructiunii switch (vezi exemplul 3, 4, 1.) si alt exemplu la descrierea instructiunii: while (vezi exemplul 3, 5, 1.).
Exemplu 3. 8. 1.
Programul
urmator citeste fisierul indicat de utilizator,
afiseaza toate caracterele tiparibile si numara
toate caracterele afisate si LF, TAB, CR. Un caracter este afisabil
daca are codul ASCII > =32 si < = 126.
# include "stdio.h"
main ( )
while ( (c = fgetc(pf) ) ! EOF)
print ("S-au prelucrat % u caractere \ n", nrc) ;
fclose (pf) ;
La întâlnirea unui caracter diferit de LF, CR, TAB sau a unui caracter neafisabil, citirea fisierului este abandonata prin iesirea din bucla while cu instructiunea break.
Instructiunea break se poate folosi cu succes si în situatiile când partea de test a unei bucle este supraîncarcata, complicata, lasându-se eventual o singura conditie la partea de test, restul conditiilor punându-se într-un if urmat de break în interiorul corpului buclei. Exemplu:
for (i = 0, i< n & & a i < 0 & & a i > 10; i + +) este echivalenta cu:
for (i = 0; i < n; i + +)
. . . . . .
. . . . . .
if (a i < 0 & & a i >10) break;
. . . . . .
. . . . . .
care pentru unii programatori pare a fi o scriere mai naturala.
|