Mikä on ehdollinen lausunto C: ssä?
C- ohjelmoinnin ehdollisia lauseita käytetään ehtojen perusteella tehtävien päätösten tekoon. Ehdolliset lauseet suoritetaan peräkkäin, kun lauseiden ympärillä ei ole ehtoja. Jos asetat jonkin ehdon lausejaksolle, suoritusvirta voi muuttua ehdon arvioiman tuloksen perusteella. Tätä prosessia kutsutaan päätöksenteoksi C.: ssä.
C-ohjelmoinnissa ehdolliset lauseet ovat mahdollisia seuraavien kahden rakenteen avulla:
1. Jos lausunto
2. If-else-lause
Sitä kutsutaan myös haarautumiseksi, kun ohjelma päättää suoritettavan lausekkeen arvioidun ehdon tuloksen perusteella.
Tässä opetusohjelmassa opit-
- Mikä on ehdollinen lausuma?
- Jos lausunto
- Suhteelliset operaattorit
- If-Else-lause
- Ehdolliset lausekkeet
- Sisäkkäiset If-else-lauseet
- Sisäkkäin muut Jos-lausunnot
Jos lausunto
Se on yksi voimakkaista ehdollisista lausunnoista. If-lause on vastuussa ohjelman suorituksen kulun muuttamisesta. Jos lausetta käytetään aina ehdon kanssa. Ehto arvioidaan ensin ennen minkä tahansa lauseen suorittamista Ifin rungossa. If-lauseen syntaksi on seuraava:
if (condition)instruction;
Ehto arvioidaan joko tosi tai väärä. True on aina nollasta poikkeava arvo, ja false on arvo, joka sisältää nollan. Ohjeet voivat olla yksittäisiä ohjeita tai koodilohkoja, jotka on suljettu kiharilla aaltosulkeilla {}.
Seuraava ohjelma kuvaa if-konstruktin käyttöä C-ohjelmoinnissa:
#includeint main(){int num1=1;int num2=2;if(num1 Tuotos:
num1 is smaller than num2Yllä oleva ohjelma havainnollistaa if-konstruktin käyttöä kahden numeron tasa-arvon tarkistamiseksi.
- Edellä olevassa ohjelmassa olemme alustaneet kaksi muuttujaa, joiden num1, num2 arvo on vastaavasti 1, 2.
- Sitten olemme käyttäneet testi-lausekkeella tarkistaaksemme, mikä numero on pienin ja mikä on suurin. Olemme käyttäneet relaatiolauseketta if-konstruktissa. Koska num1: n arvo on pienempi kuin num2, ehto arvioidaan tosi.
- Siten se tulostaa lauseen If-lohkon sisällä. Sen jälkeen ohjaus menee lohkon ulkopuolelle ja ohjelma lopetetaan onnistuneella tuloksella.
Suhteelliset operaattorit
C: llä on kuusi relaatio-operaattoria, joita voidaan käyttää muotoilemaan Boolen lauseke päätöksen tekemiseksi ja testausehtojen palauttamiseksi tosi tai epätosi:
<= pienempi tai yhtä suuri kuin
> suurempi kuin
> = suurempi tai yhtä suuri kuin
== yhtä suuri kuin
! = ei ole yhtä suuri kuin
Huomaa, että sama testi (==) eroaa tehtäväoperaattorista (=), koska se on yksi yleisimmistä ongelmista, joita ohjelmoija kohtaa sekoittamalla ne.
Esimerkiksi:
int x = 41;x =x+ 1;if (x == 42) {printf("You succeed!");}Tuotos:
You succeedMuista, että ehtoa, joka arvioi arvon, joka ei ole nolla, pidetään totta.
Esimerkiksi:
int present = 1;if (present)printf("There is someone present in the classroom \n");Tuotos:
There is someone present in the classroomIf-Else-lause
If-else is -lauseke on Ifin laajennettu versio. If-else-muodon yleinen muoto on seuraava:
if (test-expression){True block of statements}Else{False block of statements}Statements;n tämän tyyppinen rakenne, jos testilausekkeen arvo on tosi, lauseiden todellinen lohko suoritetaan. Jos testilausekkeen arvo on epätosi, lauseiden väärä lohko suoritetaan. Joka tapauksessa suorituksen jälkeen ohjaus siirretään automaattisesti lauseisiin, jotka näkyvät If-lohkon ulkopuolella.
Seuraavat ohjelmat kuvaavat if-else -konstruktin käyttöä:
Alustamme muuttujan, jolla on jokin arvo, ja kirjoitamme ohjelman sen selvittämiseksi, onko arvo alle kymmenen vai suurempi kuin kymmenen.
Aloitetaan.
#includeint main(){int num=19;if(num<10){printf("The value is less than 10");}else{printf("The value is greater than 10");}return 0;} Tuotos:
The value is greater than 10
- Olemme alustaneet muuttujan arvolla 19. Meidän on selvitettävä, onko luku suurempi tai pienempi kuin 10 käyttämällä C-ohjelmaa. Tätä varten olemme käyttäneet if-else-rakennetta.
- Tässä olemme toimittaneet ehdon numero <10, koska meidän on verrata arvoa 10: ään.
- Kuten näette, ensimmäinen lohko on aina tosi lohko, mikä tarkoittaa, että jos testi-lausekkeen arvo on tosi, ensimmäinen lohko, joka on If, suoritetaan.
- Toinen lohko on toinen lohko. Tämä lohko sisältää lauseet, jotka suoritetaan, jos testilausekkeen arvo muuttuu vääräksi. Ohjelmassamme num-arvo on suurempi kuin kymmenen, joten testiehto muuttuu vääräksi ja muuten lohko suoritetaan. Siten lähtömme tulee toisesta lohkosta, joka on "Arvo on suurempi kuin 10". If-else-ohjelman jälkeen ohjelma päättyy onnistuneella tuloksella.
C-ohjelmoinnissa voimme käyttää useita if-else-rakenteita toistensa sisällä, joihin viitataan if-else-lauseiden sisäkkäin.
Ehdolliset lausekkeet
On toinen tapa ilmaista if-else-lause on ottamalla käyttöön operaattori ?: . Ehdollisessa lausekkeessa ?: -Operaattorilla on vain yksi lause, joka liittyy if- ja muuhun.
Esimerkiksi:
#includeint main() {int y;int x = 2;y = (x >= 6) ? 6 : x;/* This is equivalent to: if (x >= 5) y = 5; else y = x; */printf("y =%d ",y);return 0;} Tuotos:
y =2Sisäkkäiset If-else-lauseet
Kun vaaditaan sarja päätöksiä, käytetään sisäkkäisiä if-else. Pesiminen tarkoittaa yhden if-else-rakenteen käyttämistä toisessa.
Kirjoitetaan ohjelma havainnollistamaan sisäkkäisen if-else käyttöä.
#includeint main(){int num=1;if(num<10){if(num==1){printf("The value is:%d\n",num);}else{printf("The value is greater than 1");}}else{printf("The value is greater than 10");}return 0;} Tuotos:
The value is:1Yllä oleva ohjelma tarkistaa, onko luku pienempi tai suurempi kuin 10, ja tulostaa tuloksen sisäkkäisellä if-else -konstruktilla.
- Ensinnäkin, olemme ilmoittaneet muuttujan num, jonka arvo on 1. Sitten olemme käyttäneet if-else-rakennetta.
- Ulommassa if-else-tilassa annettu ehto tarkistaa, onko luku alle 10. Jos ehto on tosi ja vasta sitten, se suorittaa sisemmän silmukan. Tässä tapauksessa ehto on totta, joten sisempi lohko käsitellään.
- Sisemmässä lohkossa meillä on jälleen ehto, joka tarkistaa, sisältääkö muuttujamme arvon 1 vai ei. Kun ehto on tosi, se käsittelee If-lohkon, muuten se käsittelee muun lohkon. Tässä tapauksessa ehto on totta, joten jos lohko suoritetaan ja arvo tulostetaan lähtöruudulle.
- Yllä oleva ohjelma tulostaa muuttujan arvon ja poistuu onnistuneesti.
Yritä muuttaa muuttujan arvoa nähdäksesi, miten ohjelma käyttäytyy.
HUOMAUTUS: Sisäkkäisessä if-else-tilassa meidän on oltava varovaisia sisennyksen suhteen, koska tähän prosessiin liittyy useita if-else-rakenteita, joten yksittäisten rakenteiden selvittäminen on vaikeaa. Oikea sisennys helpottaa ohjelman lukemista.
Sisäkkäin muut Jos-lausunnot
Sisäkkäin muut-jos käytetään, kun monireittisiä päätöksiä tarvitaan.
Yleinen syntaksitapa kuinka muuten, jos tikkaat rakennetaan C-ohjelmoinnissa, on seuraava:
if (test - expression 1) {statement1;} else if (test - expression 2) {Statement2;} else if (test - expression 3) {Statement3;} else if (test - expression n) {Statement n;} else {default;}Statement x;Tämän tyyppinen rakenne tunnetaan nimellä muut, jos tikkaat. Tämä ketju näyttää yleensä tikkailta, joten sitä kutsutaan myös muuten jos tikkaiksi. Testilausekkeet arvioidaan ylhäältä alas. Aina kun todellinen testilauseke löydetään, siihen liittyvä käsky suoritetaan. Kun kaikista n testilausekkeesta tulee epätosi, oletusarvoinen muu käsky suoritetaan.
Katsotaanpa todellinen työskentely ohjelman avulla.
#includeint main(){int marks=83;if(marks>75){printf("First class");}else if(marks>65){printf("Second class");}else if(marks>55){printf("Third class");}else{printf("Fourth class");}return 0;} Tuotos:
First classYllä oleva ohjelma tulostaa arvosanan testissä saatujen pisteiden mukaisesti. Olemme käyttäneet muuten jos tikkaat -rakennetta yllä olevassa ohjelmassa.
- Olemme alustaneet muuttujan merkkeillä. Muuten, jos tikkaat -rakenteessa, olemme tarjonneet erilaisia ehtoja.
- Muuttujan merkkien arvoa verrataan ensimmäiseen ehtoon, koska on totta, että siihen liittyvä käsky tulostetaan tulosnäytölle.
- Jos ensimmäinen testiehto osoittautuu vääräksi, sitä verrataan toiseen ehtoon.
- Tätä prosessia jatketaan, kunnes kaikki lauseke on arvioitu, muuten ohjaus menee ulos muut-jos-tikkaista ja oletuslauseke tulostetaan.
Yritä muuttaa arvoa ja huomaa muutos lähdössä.
Yhteenveto
- Päätöksenteko- tai haarautumislausekkeita käytetään yhden polun valitsemiseen arvioidun lausekkeen tuloksen perusteella.
- Sitä kutsutaan myös ohjauslausekkeiksi, koska se ohjaa ohjelman suorituksen kulkua.
- 'C' antaa if-else-konstruktion päätöksentekolausekkeille.
- Voimme myös pesiä toistensa sisällä, kun useita polkuja on testattava.
- Muut-jos-tikkaita käytetään, kun meidän on tarkistettava useita tapoja lausekkeen tuloksen perusteella.