Tingimuslause if

if-lause on lihtsaim tingimuslause. See lause võib esineda kahel kujul.

if(<tingimus>)
  <lause või blokk>

ja

if(<tingimus>)
  <lause või blokk>
else
  <lause või blokk>

Esimesel juhul täidetakse if-lausele järgnev lause või lausete blokk vaid siis, kui tingimuse väärtus on nullist erinev (TRUE). Kui tingimuse väärtus on null (FALSE), siis jätkatakse funktsiooni või bloki tööd kohe peale if-lauset paiknevatest lausetest. Teisel juhul täidetakse tingimuse kehtides esimene - võtmesõnale if järgnev lausete blokk ja vastasel juhul võtmesõnale else järgnev lausete blokk.

Tingimusena kasutatakse tavaliselt mingit loogilist avaldist näiteks a + b > c või a == b, kuid tingimusena võib kasutada ka suvalist valemit või muutujat. Tähtis on see, et iga avaldise nullist erinev väärtus vastab tõeväärtusele TRUE ja null tõeväärtusele FALSE. Näiteks:

if(a > b)		/* arvutab kahe arvu (a ja b) maksimumi */
  c = a;		/* ja omistab selle väärtuse muutujale c */
else
  c= b;

Tingimuslauset if ... else kasutatakse nii sageli, et selleks otstarbeks on loodud isegi omaette operaator ?:. Näiteks:

(a > b) ? (c = a) : (c = b);

Nii võtmesõnale if kui ka else tohib järgneda vaid üks lause. Suurem hulk lauseid tuleb ümbritseda looksulgudega. Näiteks:

if(pString1)	/* sama, mis if(pString1 != NULL) */
{		/* juhul, kui viit pString1 osutab mingile 
                   stringile */
  strcpy(pString2, pString1);	/* siis kopeeri see jada 
                                   puhvrisse, */
  pString2 += strlen(pString2); /* millele osutab viida 
                                   pString2 ja */
}		/* nihuta viit pString2 uuesti puhvri lõppu */

Programmi teksti parema loetavuse huvides nihutatakse võtmesõnadele if, else ja muudele tingimuslausetele järgnevad laused kahe koha võrra paremale. Nii on lihtsam jälgida, millised laused tingimuse kehtides täidetakse ja millised mitte. Borland C/C++ editor aitab sellist teksti kujundamist. Kui te rea lõpus vajutate klahvile <ENTER>, siis nihutab editor kursori uuel real sama palju paremale, kui eelmisel real. Bloki lõpus vajutage klahvile <Backspace>. Nüüd nihutab editor kursori niipalju tagasi, kuipalju oli nihutatud paremale sellele blokile eelnev blokk.