Příkaz if-else v C se používá k provádění operací na základě určité konkrétní podmínky. Operace specifikované v bloku if se provedou tehdy a pouze tehdy, když je daná podmínka pravdivá.
V jazyce C existují následující varianty příkazu if.
- Pokud prohlášení
- If- else prohlášení
- Když jinak-když žebřík
- Vnořeno pokud
Pokud Prohlášení
Příkaz if se používá ke kontrole určité dané podmínky a provádění některých operací v závislosti na správnosti této podmínky. Většinou se používá ve scénáři, kdy potřebujeme provádět různé operace pro různé podmínky. Syntaxe příkazu if je uvedena níže.
if(expression){ //code to be executed }
Vývojový diagram příkazu if v C
Podívejme se na jednoduchý příklad příkazu if v jazyce 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; }
Výstup
Enter a number:4 4 is even number enter a number:5
Program pro nalezení největšího počtu ze tří.
#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'); } }
Výstup
Enter three numbers? 12 23 34 34 is largest
Prohlášení If- else
Příkaz if-else se používá k provedení dvou operací pro jednu podmínku. Příkaz if-else je rozšířením příkazu if, pomocí kterého můžeme provádět dvě různé operace, tj. jedna je pro správnost této podmínky a druhá pro nesprávnost podmínky. Zde si musíme všimnout, že blok if a else nelze provést současně. Použití příkazu if-else je vždy vhodnější, protože vždy vyvolá případ jinak s každou podmínkou if. Syntaxe příkazu if-else je uvedena níže.
java bool na řetězec
if(expression){ //code to be executed if condition is true }else{ //code to be executed if condition is false }
Vývojový diagram příkazu if-else v C
Podívejme se na jednoduchý příklad, jak zkontrolovat, zda je číslo sudé nebo liché, pomocí příkazu if-else v jazyce 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; }
Výstup
enter a number:4 4 is even number enter a number:5 5 is odd number
Program pro kontrolu, zda je osoba oprávněna volit nebo 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'); } }
Výstup
Enter your age?18 You are eligible to vote... Enter your age?13 Sorry ... you can't vote
If else-if ladder Statement
Příkaz žebříčku if-else-if je rozšířením příkazu if-else. Používá se ve scénáři, kde je třeba provést více případů pro různé podmínky. V případě žebříkového příkazu if-else-if platí, že pokud je podmínka pravdivá, budou provedeny příkazy definované v bloku if, v opačném případě, pokud je pravdivá nějaká jiná podmínka, budou provedeny příkazy definované v bloku else-if, naposledy pokud žádná z podmínek není pravdivá, budou provedeny příkazy definované v bloku else. Existuje několik bloků, pokud je to možné. Je to podobné jako u příkazu switch case, kde se místo else bloku provede výchozí hodnota, pokud se žádný z případů neshoduje.
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 }
Vývojový diagram příkazu žebříčku else-if v C
Příklad příkazu if-else-if v jazyce C je uveden níže.
#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; }
Výstup enter a number:4 number is not equal to 10, 50 or 100 enter a number:50 number is equal to 50
Program pro výpočet známky studenta podle zadaných známek.
#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></=>
=>