Sunteți pe pagina 1din 2

INSTRUCIUNEA SWITCH Switch este o instructiune de decizie multipla care ramifica executia programului catre o anumita secventa de instructiuni

dupa cum o expresie este egala cu o anumita valoare constanta. Format: switch (expresie) instructiune unde expresie este o expresie la care rezultatu 848c23i l evaluarii trebuie sa fie de tip int, iar instructiunea este o instructiune compusa, n care fiecare secventa de instructiuni ce se doreste a se executa pentru unele valori ale expresiei trebuie sa fie etichetata cu acele valori constante. Eticheta este de forma: case expresie-constanta: unde expresie-constanta este o constanta ntreaga sau caracter sau o expresie constanta, sau de forma: default: Efectul instructiunii switch este urmatorul: - se evalueaza expresia si se compara cu valoarea cazurilor prezente n etichetele case; - daca valoarea expresiei este egala cu constanta de la unul din cazuri, executia continua de la secventa de instructiuni etichetata cu acel case n jos. Daca secventa respectiva se termina cu instructiunea break, se executa doar acele instructiuni, astfel executia continua cu urmatoarea secventa pna se ntlneste un break sau sfrsitul instructiunii switch. Aceasta curgere n jos la urmatoarea secventa poate fi n avantajul programatorului, dar poate fi si cauza unor erori; - daca valoarea expresiei nu este egala cu nici o constanta de la nici unul din cazuri, executia continua cu secventa de instructiuni etichetata cu default, iar daca default lipseste atunci nu se executa nimic. Etichetele case si default pot fi puse n orice ordine, deci nu trebuie nteles ca ar trebui sa fie puse n ordine crescatoare si default la sfrsit, dupa cum si default poate sa lipseasca. n schimb, nu este permisa scrierea a doua etichete case identice. Este indicat sa se foloseasca switch n situatia cnd realizarea unei decizii multiple cu ajutorul constructiei de if-uri imbricate ar fi suparatoare. Programul urmator utilizeaza instructiunea seitch pentru a numara de cte ori apare cuvntul "far" ntr-un fisier text.

Probleme:

1. Implementeaza o structura alternativa generalizata: swich(expresie) {case expr_1,instructiune 1; break; case expr_2,instructiune 2,break; [default insh n+1 }

S-ar putea să vă placă și