1 / 13

Agenda

Programare in limbajul C – Cursul 4 Instrucţiuni şi structuri de control Prof. univ. dr. Constantin Popescu. Agenda. Comentarii in C Instructiuni C Instructiuni compuse Instructiunea if Instructiunea switch. Comentarii. Comentariul in C: /* Acesta este un comentariu */

Download Presentation

Agenda

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Programare in limbajul C – Cursul 4Instrucţiuni şi structuri de controlProf. univ. dr. Constantin Popescu

  2. Agenda • Comentarii in C • Instructiuni C • Instructiuni compuse • Instructiunea if • Instructiunea switch

  3. Comentarii • Comentariul in C: /* Acesta este un comentariu */ • Este folosit pentru intelegerea mai usoara a programului C • Comentariile trebuie sa explice: • Cazuri speciale • Utilizare de functii (parametri, valori de return, scop) • Lucruri care nu sunt triviale • Comentariul explica ce face codul respectiv (ce urmareste). • Comentariul in C++: // Acesta este un comentariu C++

  4. Instructiuni C • In general, o instructiune este o parte a unui program care poate fi executat. • O expresie este o instructiune: a=a+1; a--; • Un apel de functie este de asemenea o instructiune: printf("%d",a); • Se pot scrie şi instrucţiuni de genul: 0; i; i+1;a--; • care sunt corecte din punct de vedere sintactic • calculează o valoare fără să facă nimic cu acea valoare • aşa că valoarea calculată se pierde, instrucţiunile neavând nici o valoare practică.

  5. Instructiuni Compuse • Secvente de instructiuni pot fi combinate intr-una singura cu ajutorul acoladelor: {...} • De exemplu: { printf ("Hello, "); printf ("world! \n"); } • Compilatorul C trateaza colectia de aceste instructiuni ca fiind o singura instructiune.

  6. Instrucţiunea if (1) • Sintaxa 1: if (expresie) instructiune1; urmatoarea instructiune; • Sintaxa 2: if (expresie) instructiune1; else instructiune2; urmatoarea instructiune; • Sintaxa 3: if (expresie1) instructiune1; else if (expresie2) instructiune2; else instructiune3; urmatoarea instructiune; Daca expresieeste diferita de zero se executa instructiune1 Daca expresieeste diferita de zero se executa instructiune1, altfel se executa instructiune2

  7. Instrucţiunea if (2) • Exemplu: programul C care decide daca doua numere intregi sunt egale: #include <stdio.h> int x,y; int main () { printf ("\nIntroduceti un numar intreg x: "); scanf ("%d", &x); printf ("\Introduceti un numar intreg y: "); scanf ("%d",&y); if (x==y) printf ("x este egal cu y\n"); else if (x > y) printf ("x este mai mare decit y\n"); else printf ("x este mai mic decit y\n"); return 0; }

  8. Instrucţiunea if (3) • Exemplu: programul C calculeaza media a n numere #include <stdio.h> int main() { int n = 3, sum = 34; float media; if(n > 0) media = sum / n; else { printf("nu se poate calcula media\n"); media = 0; } return 0; }

  9. Instrucţiunea if (4) • Exemplu: secvenţa de cod de mai jos determină pe baza valorilor lui x şi y cadranul în care suntem (dacă x > 0 şi y > 0 ne aflăm în cadranul I): #include <stdio.h> int main() { int x = 3, y = -2; if(x > 0) { if(y > 0)printf("Cadranul I.\n"); else printf("Cadranul IV.\n"); } else{ if(y > 0)printf("Cadranul II\n"); elseprintf("Cadranul III.\n"); } return 0; }

  10. Instrucţiunea if (5) • Exemplu: programul C care asociaza fiecărei note un calificativ: #include <stdio.h> int main() { int nota = 6; if(nota >= 9) printf("Foarte bine"); else if(nota >= 7) printf("Bine"); else if(nota >= 5) printf(”Satisfăcător"); else printf("Insuficient "); return 0; }

  11. Instructiunea switch • Sintaxa instructiunii switch este: switch(expresie) { case constant_expr1 : instructiuni case constant_expr2 : instructiuni … case constant_exprk : instructiuni default :instructiuni } • Efectul instructiunii switch este:: • Se evalueaza expresie. • Se executa toate instructiunile de dupa constant_expr pina cind se intilneste o instructiune break (sau goto, return).

  12. Exemplu: instructiunea switch int a; printf("1. Open file..\n"); printf("2. Save file.\n"); printf("3. Save as..\n"); printf("4. Quit.\n"); printf("Your choice:"); scanf("%d", &a); if(a==1) open_file(); else if(a==2) save_file(); else if(a==3) save_as(); else if(a==4) return 0; else return 1; int a; printf("1. Open file..\n"); printf("2. Save file.\n"); printf("3. Save as..\n"); printf("4. Quit.\n"); printf("Your choice:"); scanf("%d", &a); switch(a) { case 1: open_file();break; case 2: save_file();break; case 3: save_as();break; case 4: return 0; default: return 1; }

  13. Exemplu: instructiunea switch #include <stdio.h> int main (void) { char letter; printf(“Tasteaza a pentru arie, c pentru cerc sau i pentru iesire: "); scanf("%c", &letter); switch(letter){ case 'a': case 'A': printf(“Ai ales A \n"); break; case 'c': case 'C': printf(" Ai ales C \n"); break; case ‘i': case ‘I': printf(“Iesire \n"); break; default: printf(“Necunoscut \n"); break; } return 0; }

More Related