Die if-Anweisung wird auch „Zweifachauswahl“ genannt. Der Wert eines logischen Ausdrucks (wahr oder falsch) wird berechnet, und auf Grund des Ergebnisses wird eine von zwei Anweisungen durchgeführt.
Zur grafischen Darstellung der Zweifachauswahl in Struktogrammen ist unter anderem folgende Form üblich:
Das Beispiel, welches Fahrenheitgrade in Celsiusgrade umrechnet, soll so erweitert werden, dass bei Temperaturwerten kleiner oder gleich 0 Grad Celsius der Text „Achtung, Glatteisgefahr!“ ausgegeben wird.
In diesem Fall gibt es keinen Nein-Zweig. Bei Plus-Graden erfolgt keine Ausgabe.
Der C++-Code dazu sieht folgendermaßen aus:
if (cgrad<=0) cout << "Achtung, Glatteisgefahr!\n";
Lautet die Antwort im vorigen Beispiel „nein“, wird im Nein-Zweig weitergemacht. Wenn dort ebenfalls eine Anweisung steht, wird diese ausgeführt. Der Nein-Zweig wird mit dem Schlüsselwort else eingeleitet. Nun soll bei Plusgraden folgende Meldung erscheinen: „Plusgrade, trotzdem Geschwindigkeit beachten!“
Der C++-Code dazu sieht nun so aus:
if (cgrad<=0) cout << "Achtung, Glatteisgefahr!\n"; else cout << "Plusgrade, trotzdem Geschwindigkeit beachten!\n";
Sollen in einem der Zweige mehrere Anweisungen durchgeführt werden, dann werden sie in { und } eingeschlossen und so zu einer zusammengesetzten Anweisung zusammengefasst.
Beispielsweise könnte das Programm so aussehen:
if (cgr<=0) {cout << "Achtung, Glatteisgefahr!\n"; cout << "Geschwindigkeit den Gegebenheiten anpassen!\n"; } else {cout << "Plusgrade..."\n; cout << "Trotzdem Geschwindigkeit beachten!\n"; }