C Handbuch bestellen

Das C Tutorial (deutsch)

Verzweigungen

if und else

Eine Verzweigung innerhalb eines Programms wird durch eine Bedingung entschieden.

Wenn der Benutzer X eingibt, mache A.

Solche Entscheidungen realisieren wir mit der if und else Anweisung. Nach dem Schlüsselwort if folgen Klammern, in denen die Bedingung formuliert wird. Ist die Bedingung wahr, werden die Code-Zeilen zwischen den geschweiften Klammern { }, auch Block genannt, ausgeführt. So wird in diesem einfachen Beispiel nur die Meldung "fuenf" am Bildschirm erscheinen, wenn die Variable zahl genau den Wert 5 hat.

int zahl=5;

if(zahl==5) {
	printf("fuenf\n");
}
fuenf

Wenn die Bedingung nicht erfüllt ist, kann man noch eine Alternative mittels else setzen.

int zahl=6;

if(zahl==5) {
	printf("fuenf\n");
}else {
	printf("nicht fuenf\n");
}
nicht fuenf

Möchte man verschiedene Fälle nacheinander prüfen, so kann man die if Anweisung schachteln.

int zahl=6;

if(zahl==5) {
	printf("fuenf\n");
}else {
    if(zahl==6) {
        printf("sechs\n");
    }else {
    	printf("nicht fuenf und nicht sechs\n");
	}
}
sechs

In den Beispielen sehen wir, dass die Code-Zeilen innerhalb eines if Blocks, also zwischen { }, eingerückt sind. Dies wird aus Gründen der Übersichtlichkeit und Lesbarkeit gemacht. Hierfür sollten if Anweisungen auch nicht tiefer als drei mal verschachtelt werden. Kommt nur eine Anweisung in den if Block, so könnte man auch die geschweiften Klammern weglassen.

int zahl=6;

if(zahl==5) printf("fuenf\n");
else if(zahl==6) printf("sechs\n");
else printf("nicht fuenf und nicht sechs\n");