Iskaz if-else u C-u koristi se za izvođenje operacija na temelju nekog specifičnog uvjeta. Operacije navedene u bloku if izvode se ako i samo ako je dani uvjet istinit.
Postoje sljedeće varijante naredbe if u jeziku C.
- If izjava
- Izjava if-else
- Ako drugo-ako ljestve
- Ugniježđeno ako
Izjava If
Naredba if koristi se za provjeru nekog zadanog uvjeta i izvođenje nekih operacija ovisno o ispravnosti tog uvjeta. Uglavnom se koristi u scenariju gdje trebamo izvesti različite operacije za različite uvjete. Sintaksa naredbe if data je u nastavku.
if(expression){ //code to be executed }
Dijagram toka naredbe if u C
Pogledajmo jednostavan primjer if naredbe jezika C.
#include int main(){ int number=0; printf('Enter a number:'); scanf('%d',&number); if(number%2==0){ printf('%d is even number',number); } return 0; }
Izlaz
Enter a number:4 4 is even number enter a number:5
Program za pronalaženje najvećeg broja od tri.
#include int main() { int a, b, c; printf('Enter three numbers?'); scanf('%d %d %d',&a,&b,&c); if(a>b && a>c) { printf('%d is largest',a); } if(b>a && b > c) { printf('%d is largest',b); } if(c>a && c>b) { printf('%d is largest',c); } if(a == b && a == c) { printf('All are equal'); } }
Izlaz
Enter three numbers? 12 23 34 34 is largest
Izjava if-else
Naredba if-else koristi se za izvođenje dvije operacije za jedan uvjet. Naredba if-else proširenje je naredbe if pomoću koje možemo izvesti dvije različite operacije, tj. jedna je za ispravnost tog uvjeta, a druga je za netočnost uvjeta. Ovdje moramo primijetiti da se blok if i else ne može izvršiti istovremeno. Korištenje naredbe if-else uvijek je poželjnije jer se uvijek poziva na case case sa svakim if uvjetom. Sintaksa naredbe if-else je dana u nastavku.
java boolean
if(expression){ //code to be executed if condition is true }else{ //code to be executed if condition is false }
Dijagram toka naredbe if-else u C-u
Pogledajmo jednostavan primjer za provjeru je li broj paran ili neparan pomoću naredbe if-else u jeziku C.
#include int main(){ int number=0; printf('enter a number:'); scanf('%d',&number); if(number%2==0){ printf('%d is even number',number); } else{ printf('%d is odd number',number); } return 0; }
Izlaz
enter a number:4 4 is even number enter a number:5 5 is odd number
Program za provjeru ima li osoba pravo glasa ili ne.
#include int main() { int age; printf('Enter your age?'); scanf('%d',&age); if(age>=18) { printf('You are eligible to vote...'); } else { printf('Sorry ... you can't vote'); } }
Izlaz
Enter your age?18 You are eligible to vote... Enter your age?13 Sorry ... you can't vote
If else-if ladder Statement
Iskaz ljestvice if-else-if proširenje je iskaza if-else. Koristi se u scenariju gdje postoji više slučajeva koje treba izvesti za različite uvjete. U if-else-if naredbi ljestvice, ako je uvjet istinit, tada će se izvršiti naredbe definirane u if bloku, inače ako je neki drugi uvjet istinit, naredbe definirane u else-if bloku će se izvršiti, na kraju ako niti jedan od uvjeta nije istinit tada će se izvršiti naredbe definirane u bloku else. Postoji više mogućih blokova else-if. Slično je naredbi switch case gdje se izvršava default umjesto else bloka ako se nijedan slučaj ne podudara.
if(condition1){ //code to be executed if condition1 is true }else if(condition2){ //code to be executed if condition2 is true } else if(condition3){ //code to be executed if condition3 is true } ... else{ //code to be executed if all the conditions are false }
Dijagram toka naredbe else-if ljestvice u C-u
Primjer naredbe if-else-if u jeziku C dan je u nastavku.
#include int main(){ int number=0; printf('enter a number:'); scanf('%d',&number); if(number==10){ printf('number is equals to 10'); } else if(number==50){ printf('number is equal to 50'); } else if(number==100){ printf('number is equal to 100'); } else{ printf('number is not equal to 10, 50 or 100'); } return 0; }
Izlaz enter a number:4 number is not equal to 10, 50 or 100 enter a number:50 number is equal to 50
Program za izračunavanje ocjene učenika prema navedenim ocjenama.
#include int main() { int marks; printf('Enter your marks?'); scanf('%d',&marks); if(marks > 85 && marks 60 && marks 40 && marks 30 && marks <= 40) { printf('you scored grade c ...'); } else printf('sorry you are fail < pre> <p> <strong>Output</strong> </p> <pre> Enter your marks?10 Sorry you are fail ... Enter your marks?40 You scored grade C ... Enter your marks?90 Congrats ! you scored grade A ... </pre> <hr></=>
=>