Scrigroup - Documente si articole

Username / Parola inexistente      

Home Documente Upload Resurse Alte limbi doc  


AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml


Instructiunea switch

c

+ Font mai mare | - Font mai mic





DOCUMENTE SIMILARE

Trimite pe Messenger
Functia standard printf
Gestiunea culorilor
Expresii conditionale
Initializarea pointerilor
Stiva
Notiunea de tablou
Enumerari
Gestiunea imaginilor
Variabile si aritmetica
LISTE CIRCULARE. STIVE. COZI

TERMENI importanti pentru acest document

Instructiunea    switch

Instructiunea switch permite realizarea structurii alternativa generalizata. Ea este echivalenta cu o imbricare de structuri de alternativa simple. Utilizarea instructiunii switch face in schimb programul mult mai clar.




Formatul instructiunii switch este urmatorul:

switch (exp)

unde: c1,. . . cn sunt constante sau constante simbolice;

sir1, . . . ,sirn, sir sunt siruri de instructiuni.

Efectul:

se evalueaza expresia din paranteza;

se compara pe rand valoarea expresiei cu valorile constantelor c1, . . . , cn;

daca valoarea expresiei coincide cu valoarea lui ck, se executa secventa de instructiuni definita prin sirk; in cazul in care valoarea expresiei nu coincide cu nici una din constantele c1, . . . , cn, se executa secventa de instructiuni definita prin sir;

dupa executia secventei sirk sau sir se trece la instructiunea urmatoare instructiunii switch, adica la prima instructiune aflata dupa acolada inchisa care termina instructiunea switch respectiva; evident, acest lucru are loc daca sirul care se executa nu impune, el insusi, un alt mod de continuare a executiei, de exemplu o revenire din functia respectiva, un salt la o anumita instructiune, etc.

Observatii:

1o. Ramura default nu este obligatorie. In lipsa ei, daca valoarea expresiei nu coincide cu nici una din constantele c1,. . . , cn, instructiunea switch respectiva nu are nici un efect.

2o.Constructia break reprezinta o instructiune. Ea termina fiecare ramura de instructiuni sir1, . . . , sirn, provocand saltul la instructiunea urmatoare instructiunii switch sau, cum se mai spune, realizeaza iesirea din instructiunea switch.

3o. Instructiunea break nu este obligatorie. In cazul in care este absenta, se executa secvential urmatoarea ramura. De exemplu daca avem secventa:

switch (exp)

ea se executa in felul urmator:

daca valoarea expresiei este egala cu c1 se executa sir1 si apoi sir2;



daca valoarea expresiei este egala cu c2 se executa sir2;

daca valoarea expresiei difera de valorile c1 si c2 instructiunea switch de mai sus nu este efectiva, se trece la instructiunea urmatoare care urmeaza dupa switch.

secventa de mai sus se putea realiza si astfel:

if (exp = = c1)

else if (exp = = c2) sir2

Exemplu:

Vom citi din fisierul de intrare constructii de forma: op1 operator op2, unde op1 si op2 sunt numere intregi (operanzi intregi) iar operator este un operator aritmetic . La iesire se va scrie valoarea expresiei citite. De exemplu daca se citeste secventa 100/3 se va afisa rezultatul 33. Programul permite citirea si evaluarea mai multor astfel de expresii, pana la intalnirea sfarsitului de fisier.

#include <stdio.h>

void main (void)

else rezultat = op1 / op2;

break;

default : printf (“operator eronatn”);

rezultat = 0;

} // sfarsit switch

printf (“%d %c %d %dn”, op1, operator, op2, rezultat);

} else

printf (“expresie eronat²n”); // sfarsit if

// sfarsit while






Politica de confidentialitate



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 439
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2022 . All rights reserved

Distribuie URL

Adauga cod HTML in site