You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

If-valintarakenne

if-rakenteen yksinkertaisin muoto on

if (ehto)
{
    lauseita
}
  • Aaltosulkeiden välissä olevat lauseet valitaan suoritettaviksi vain ehdon ollessa voimassa.
  • Lauseita voi olla yksi tai useampia.
  • Jos lauseita on vain yksi, ei ole välttämätöntä käyttää aaltosulkeita.

Esimerkiksi:

if (a<b) {
    printf("a oli pienempi kuin b");
}

if ja else -rakenne

if-rakenteseen voidaan lisätä vaihtoehtoinen haara, joka suoritetaan silloin kun ehto ei ole voimassa:

if (ehto) {
    lauseita
} else {
    lauseita
}

Esimerkiksi:

if (a<b) {
    printf("a oli pienempi kuin b");
} else {
    printf("a oli yhtäsuuri tai suurempi kuin b");
}

else if -rakenne

Testaus voidaan jakaa myös useampaan osaan:

if (ehto1) {
    lauseita1
} else if (ehto2) {
    lauseita2
...
} else if (ehto_n) {
    lauseita_n
} else {
    lauseita3
}

else-if haaroille ei ole mitään lukumäärärajoituksia, niitä voi olla n kappaletta.

Esimerkki:

if (a<b)       printf("a oli pienempi kuin b");
else if (a==b) printf("a oli yhtäsuuri kuin b");
else           printf("a suurempi kuin b");

if-valinta voidaan tehdä monen vaihtoehdon välillä:

if(ehto1) lauseke1;
else if (ehto2) lauseke2;
else if (ehto3) lauseke3;
else lauseke4; // tämä toteutetaan jos mikään ehto ei ole tosi

Lauseke1 voi koostua yhdestä käskystä tai {} sulkujen sisällä olevasta ohjelmalohkosta  (sulkulauseke voi olla myös tyhjä).
Alistettuja if-lauseita käytetään usein tehokkaan ohjelmoinnin yhteydessä:

if (i) {
    if (j) lauseke1;
    if (k) lauseke2;
    else   lauseke3;
}
else lauseke4;
  • No labels
You must log in to comment.