if - ühene valik

if (tingimus) tegevus;

Kui tingimus on täidetud, sooritatakse tegevus. Tegevus võib koosneda nii ühest lausest kui ka mitmest lausest (sellisel juhul loomulikult kirjutatakse need laused looksulgude"{" ja "}" vahele)


if (tingumus) tegevus1; else tegevus 2;

Kui tingimus on täidetud, sooritatakse tegevus1, vastasel juhul sooritatakse tegevus2. Nii tegevus1 kui tegevus2 võivad koosneda nii ühest kui ka mitmest lausest (sellisel juhul loomulikult kirjutatakse need laused looksulgude"{" ja "}" vahele)


Näide 1

#include <stdio.h>

int main (void)
{
    //deklareerime muutuja
    int arv;
   
    //täisarvu sisestamine
    printf("Sisesta taisarv: ");
    scanf("%d",&arv);

    if(arv != 100)
    {
           printf(
"Sa ei sisestanud 100!!! :( \n");
           printf(
"Sa sisestasid %d\n", arv);
    }  

   
    return 0;
}  


Näide 2

#include <stdio.h>

int main (void)
{
    //deklareerime muutuja
    int arv;
   
    //täisarvu sisestamine
    printf("Sisesta taisarv: ");
    scanf("%d",&arv);

    if(arv == 100)
    {
           printf("Sa sisestasid 100!!! :) \n");
         
    else
    {
           printf("Sa ei sisestanud 100... :( \n");
    }
 
   
    getchar();
    return 0;
}   



If valiku puhul võib tingimusi olla ka rohkem kui kaks, neid võib olla täpselt niipalju kui vaja:

if (tingimus1)
{
täidetavad käsud;
}
else if (tingimus2)
{
täidetavad käsud;
}
else if (tingimus3)
{
täidetavad käsud;
}
...
}
else
{
 kõikidel muudel juhtudel täidetavad käsud;
}



switch - mitmene valik

Juhul kui valikuid on kolm või enam, on soovitav kasutada if valiku asemel hoopis mitmest valikut switch:

switch(avaldis)
{
case väärtus1: tegevus1;
break;
case väärtus2: tegevus2;
break;
...
default: tegevusN
}

Iga tegevus võib loomulikult koosneda nii ühest kui mitmest lausest; viimasel juhul tuleb laused kindlasti kirjutada looksulgude "{" ja "}" vahele.

Switch töötab järgmiselt:
  • kontrollitakse kas avaldise väärtuseks on väärtus1; kui jah, siis täidetakse tegevus1 kuni leitakse võtmesõna break, millega lõpetatakse switch täitmine
  • kui avaldise väärtus ei ole väärtus1, siis kontrollitakse kas selle väärtus on väärtus2; kui jah, siis täidetakse tegevus2 kuni leitakse võtmesõna break, millega lõpetatakse switch täitmine
  • juhul kui avaldise väärtuseks ei ole ükski etteantud väärtustest, täidetakse default tegevus.


Näide

#include <stdio.h>

int main (void)
{
    //muutuja deklareerimine
    int valik;
   
    //menyy kuvamine
    printf("Tee oma valik\n\n");
    printf("1 - PRINTIMINE\n");
    printf("2 - FAILI SALVESTAMINE\n");
    printf("3 - ANDMETE EKSPORTIMINE\n");
    printf("0 - T88 L6PETAMINE\n\n");
   
    //kasutaja sisestab valiku
    scanf("%d",&valik);
   
    //valiku tulemuse kuvamine       
    switch(valik){
       case 1: printf("Valisid PRINTIMISE");
       break;
       case 2: printf("Valisid FAILI SALVESTAMISE");
       break;
       case 3: printf("Valisid ANDMETE EKSPORTIMISE");
       break;
       case 0: printf("Valisid T88 LÕPETAMISE");
       break;
       default: printf("VIGA!!! Sellist valikut ei ole");
    }
   
    return 0;
}