Video: How great leaders inspire action | Simon Sinek 2025
C-språket gir deg en rekke måter å bygge et program på som gjør en beslutning. Hvis du trenger noe å skje bare når en bestemt forutsetning er oppfylt, tilbyr C deg om søkeordet. Hvis programmet ditt trenger å velge mellom to baner, kan du bruke enda flere valg ved å bruke annet med din if-setning.
Hvis ditt C-program trenger å gjøre en mer komplisert beslutning, kan du bruke annet hvis. Ved å bruke ellers hvis du kan ha flere hvis setninger stablet på toppen av hverandre, innsnevrer du et komplekst beslutningstreet i noen få mulige utfall:
#include int main () {float temp; printf ("Hva er temperaturen utenfor?"); scanf ("% f", og temp); hvis (temp = 80) {printf ("Mitt men det er varmt ute!");} else {printf ("My how pleasant!");} returnere (0);}
Dette er en måte å håndtere flere forhold på i C. Slik fungerer det:
-
Den første sammenligningen er laget av hvis i linje 9.
Hvis verdien av variabel temp er mindre enn 65, blir de setningene som tilhører if utført; resten av konstruksjonen (linjene 13 til 20) hoppes over.
-
Når den første sammenligningen er feil, blir sammenligningen laget av annet hvis i linje 13.
Når denne sammenligningen er sant, er de utsagnene som tilhører annet hvis de blir henrettet. Linjene 17 til 20 (inkluderende) hoppes over.
-
Til slutt, når både hvis og ellers hvis sammenligninger er falske, blir setningene som tilhører ellers (Linje 17) utført.
Når du utfører flere sammenligninger, er det viktig å få ordren riktig. Dette krever ofte et visuelt bilde, som det som vises her, fordi hvis du ikke kan visualisere sammenligningene og måten de eliminerer utfallet, gjør programmet ikke det du hadde tenkt. (Dette er en "feil" type feil.)
I denne illustrasjonen kan du se hvordan den første hvis setningen eliminerer temperaturer under 65. Deretter eliminerer else if-setningen alle temperaturer 80 og høyere. Når du kommer til den endelige ellers, er temperaturen som ligger igjen i området fra 65 til 79. 99.
Anta nå at noen ikke tenkte, og de tre setningene vises som vist i figuren som følger. I dette eksemplet er ingenting igjen for ellers å representere, og programmet gir mest sannsynlig et feilaktig svar. (Merk at kompilatoren ikke peker ut denne typen psykiske feil.)
