Decizie și ramificare în programarea C?

Decizie Si Ramificare In Programarea C



O componentă critică a oricărui limbaj de programare este capacitatea de a lua decizii, unde computerul este programat să urmeze anumite căi de execuție în funcție de condițiile specifice. Limbajul C, dezvoltat la începutul anilor 1970, este unul dintre cele mai vechi limbaje de programare care oferă luarea deciziilor capabilități prin ramificare .

Ce este Decizia în programarea C?

În programarea în C, luarea deciziilor este o abilitate de bază pe care programatorii trebuie să o stăpânească pentru a construi programe eficiente. Luarea deciziilor este procesul de evaluare a diferitelor condiții și de alegere a celui mai bun curs de acțiune pe baza rezultatelor. Cu o declarație dacă-altfel, luarea deciziilor este implementat în C. Deciziile se bazează pe condiții și se fac folosind declarația if-else. Dacă condiția este adevărată, codul rulează; pe de altă parte, dacă este fals, se rulează codul conținut în instrucțiunea else.

Ce este ramificarea în programarea C?

În programarea în C, ramificare este tehnica care permite modificarea fluxului de execuție în funcție de rezultatul unei condiții. Ramificare permite programului să ruleze anumite blocuri de cod în funcție de rezultatul unei anumite circumstanțe.







Există diferite tipuri de ramificare în programarea C, inclusiv dacă-altfel , intrerupator , și operatori condiţionali . Într-o declarație switch , programul evaluează o valoare și alege opțiunea relevantă din lista de cazuri disponibile. Operatorii condiționali sunt stenografie dacă-altfel instrucțiuni care vă permit să scrieți cod mai scurt.



Decizii și ramificare în programarea C

The luarea deciziilor proces în C Programarea implică utilizarea instrucțiunilor condiționate pentru a controla fluxul de execuție a programului. Ramificare permite programului să execute diferite seturi de cod în funcție de rezultatul anumitor condiții.



În programarea în C, luarea deciziilor , și ramificare sunt realizate prin:





  • if Statement
  • Declarație if-else
  • Declarație switch
  • Imbricat dacă
  • else-dacă Ladder
  • Break Statement
  • Declarație de continuare

1: Declarația dacă

Cea mai simplă metodă de a lua decizii oferit de programarea C este declarația dacă . The declarația dacă testează o condiție dată și execută codul din corpul instrucțiunii dacă condiția este adevărată. În caz contrar, programul ignoră blocul de cod asociat cu declarația dacă , și continuă cu codul următor.

Sintaxa pentru if-afirmaţie este:



dacă ( condiție )
{
Bloc de declarații;
}

Uită-te la codul de mai jos:

#include
int principal ( )
{
număr int = douăzeci ;
dacă ( pe unu > 5 )
{
printf ( „numărul este mai mare decât 5 \n ' ) ;
}
printf ( „valoarea lui num este: %d \n ' , pe unu ) ;
întoarcere 0 ;
}

Codul de mai sus definește o variabilă „ pe unu ” cu o valoare de 20 și folosește o instrucțiune if pentru a verifica dacă este mai mare de 5. Dacă este, programul afișează „ num este mai mare de 5 „. În cele din urmă, imprimă valoarea „ pe unu „.

Ieșire

2: Declarație if-else

Instrucțiunea if-else este o modificare a instrucțiunii if care permite executarea diferitelor blocuri de cod în funcție de faptul că condiția este adevărată sau falsă.

dacă ( condiție ) {
// cod de executat dacă conditia este Adevărat
} altfel {
// cod de executat dacă conditia este fals
}

Ca rezultat, primul bloc de cod va fi executat dacă condiția este adevărată, iar al doilea bloc de cod va fi executat dacă condiția este falsă.

Luați în considerare următorul cod ca exemplu:

#include
int principal ( )
{
număr int = 10 ;
dacă ( pe unu > 5 )
{
printf ( „numărul este mai mare decât 5 \n ' ) ;
} altfel {
printf ( „numărul este mai mic de 10” ) ;
}
întoarcere 0 ;
}

Programul de mai sus creează variabila num și îi dă valoarea 10. Apoi, folosind an declarația dacă , determină dacă „ pe unu ” este mai mare decât 5. num este mai mare de 5 ” este tipărit dacă „ pe unu ” depășește 5. Afișează „ num este mai mic de 10 ” dacă num nu este mai mare de 5. Programul returnează apoi 0, ceea ce înseamnă că a rulat cu succes.

Ieșire

3: Declarație switch

Un alt instrument important pentru luarea deciziilor în C Programarea este intrerupator afirmație. The intrerupator declarația verifică condiții specifice la fel ca declarații dacă-altfel face, dar poate verifica mai multe posibilități pentru acea condiție. Acest lucru este util atunci când avem de-a face cu o mulțime de rezultate diferite.

Sintaxa pentru utilizarea declarație switch în programarea C este:

intrerupator ( expresie ) {
caz constant1:
// cod de executat dacă expresia este egală cu constanta1
pauză ;
caz constanta 2:
// cod de executat dacă expresia este egală cu constanta2
pauză ;
...
Mod implicit:
// cod de executat dacă niciunul dintre cazuri nu se potrivește
pauză ;
}

Expresie este variabila care este evaluată în acest caz, iar declarații de caz include valorile comparate cu acesta.

Luați în considerare următorul cod ca exemplu:

#include

int principal ( ) {
număr int = 2 ;
intrerupator ( pe unu ) {
caz 1 :
printf ( 'numarul este 1' ) ;
pauză ;
caz 2 :
printf ( 'numarul este 2' ) ;
pauză ;
caz 3 :
printf ( 'numarul este 3' ) ;
pauză ;
Mod implicit:
printf ( „altul număr decât 1, 2 și 3” ) ;
pauză ;
}
întoarcere 0 ;
}

Programul de mai sus arată cum să utilizați instrucțiunea switch pentru a examina valoarea variabilei „ pe unu ” și rulați blocul de cod relevant. În acest caz, din moment ce „ pe unu ” este inițializat la 2, ieșirea va fi „ numarul este 2 „.

Ieșire

4: Imbricat dacă

Instrucțiuni if ​​imbricate sunt instrucțiuni ramificate care sunt încorporate în alte instrucțiuni if ​​imbricate. Permite o logică de ramificare mai complexă prin verificarea mai multor condiții din alte instrucțiuni condiționale. Interiorul declaraţii dacă sunt executate numai dacă instrucțiunile exterioare if se evaluează la adevărat.

Sintaxa de bază pentru imbricate if instrucțiuni sunt date mai jos:

dacă ( condiție ) {
dacă ( expresie ) {
Bloc de declarații;
} altfel {
Bloc de declarații;
}
} altfel {
Bloc de declarații;
}

Luați în considerare următorul cod ca exemplu:

#include

int principal ( ) {
int num1 = 1 ;
int num2 = cincisprezece ;
int num3 = 7 ;

dacă ( num1 > num2 ) {
dacă ( num1 > numărul 3 ) {
printf ( „num1=1 este cel mai mare număr \n ' ) ;
}
altfel {
printf ( „num3=7 este cel mai mare număr \n ' ) ;
}
}
altfel {
dacă ( num2 > numărul 3 ) {
printf ( „num2=15 este cel mai mare număr \n ' ) ;
}
altfel {
printf ( „num3=7 este cel mai mare număr \n ' ) ;
}
}

întoarcere 0 ;
}

Programul de mai sus compară trei numere întregi, „ num1 „, „ num2 ', și ' numărul 3 „, și utilizează instrucțiuni imbricate if pentru a determina care dintre ele este cel mai mare număr. Mai întâi se compară „ num1 ' și ' num2 „, apoi îl compară pe cel mai mare dintre cei doi cu „ numărul 3 „. Ieșirea va indica care variabilă are cea mai mare valoare.

Ieșire

5: altfel-daca Scara

Putem rezolva cu ușurință o problemă complexă atunci când sunt prezente numeroase criterii în ordine secvențială prin folosirea a scara-daca sau expresia else-if .

Mai jos este sintaxa pentru else-dacă scară afirmație:

dacă ( condiția 1 )
{
Bloc de declarații;
}
altfel dacă ( condiția 2 )
{
Bloc de declarații;
}
altfel dacă ( starea 3 )
{
Bloc de declarații;
}
altfel
{
declarație implicită
}

Luați în considerare următorul cod ca exemplu:

#include

int principal ( ) {
int semne = 80 ;

dacă ( semne > = 90 && note = 80 && note = 70 && note = 60 && note = cincizeci && semne < 60 ) {
printf ( 'Clasa: D' ) ;
}
altfel {
printf ( „Notă: Eșec” ) ;
}
întoarcere 0 ;
}

Programul de mai sus angajează logica dacă-altfel să se determine o notă în funcție de valoarea actuală a variabilei „note”. În funcție de valoarea „notelor”, programul va scoate o notă corespunzătoare, de la A+ la Fail.

Ieșire

6: Declarație de pauză

The declarație de pauză este o instrucțiune importantă a fluxului de control în programarea C, care permite programatorilor să controleze comportamentul buclelor și instrucțiunilor de comutare. The declarație de pauză are două aplicații în programarea C:

  • Când o buclă ajunge la a pauză instrucțiunea, se încheie imediat și controlul programului este transmis instrucțiunii care urmează bucla.
  • Poate fi folosit pentru a încheia un caz utilizându-l la instrucțiunea switch.

Sintaxa pentru pauză afirmație:

pauză ;

Uită-te la codul exemplu:

#include

int principal ( ) {
număr int = 12 ;
in timp ce ( pe unu cincisprezece ) {
pauză ;
}
}
întoarcere 0 ;
}

Această bucată de cod C declară o buclă while care se execută atâta timp cât variabila întreagă „ pe unu ” este mai mic de 22 și îl inițializează la 12. În buclă, „ pe unu ” este mărită cu 1 și valoarea sa este raportată consolei folosind printf . Bucla se termină apoi cu a declarație break dacă „num” este mai mare de 15 așa cum este determinat de o instrucțiune if. Acest cod încheie efectiv bucla după imprimarea valorilor „num” între 12 și 15 (inclusiv). Programul se încheie prin returnarea 0, ceea ce arată că a rulat corect.

Ieșire

7: Continuare Declarație

În programarea C, continua afirmația este similară cu pauză afirmație. În loc să impună terminarea, forțează următoarea iterație a buclei și omite orice cod între ele. Secțiunile de test și increment condiționat ale buclei for sunt executate de continua expresie. Testele condiționate ale buclelor while și do-while sunt trecute de controlul programului ca urmare a continua afirmație.

Sintaxa lui continua declaratiile este:

continua ;

Uită-te la acest exemplu.

#include

int principal ( ) {
număr int = 12 ;
in timp ce ( pe unu cincisprezece ) {
continua ;
}
}
întoarcere 0 ;
}

Bucla while din programul de mai sus este folosită pentru a imprima valoarea variabilei „ pe unu ” dacă este mai mic de 22. Dacă ” pe unu ” depășește 15 în timpul buclei, the continua instrucțiunea este executată și iterația actuală a buclei este omisă. În acest caz, bucla se va executa de cinci ori, imprimând valoarea „num” de fiecare dată, până când „ pe unu ” ajunge la 16 și bucla omite iterația în care „ pe unu ” este 16, apoi continuă cu iterațiile rămase până când bucla este terminată.

Ieșire

Concluzie

Luarea deciziilor și ramificare sunt componente critice ale limbajului C care permit crearea de aplicații complexe, interactive, care se ocupă de diferite condiții din lumea reală. Instrucțiunile condiționate, if-else și switch, sunt cazurile primare utilizate în creare bazate pe decizii algoritmi. Cu toate că ramificare poate reprezenta o provocare în organizarea codurilor, cu o planificare și execuție adecvată, programatorii pot crea programe eficiente și fără erori care să îndeplinească cerințe specifice.