16.09.2017 Aufrufe

Vorkurs Informatik

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

86 5 Funktionen<br />

Soll der Funktion kein Wert übergeben werden, wird der Platz zwischen den Klammern leer<br />

gelassen, also beispielsweise „int eineFunktion( ) {...}“. Dies wird auch als leere Parameterliste<br />

bezeichnet.<br />

Der Rumpf einer Funktion besteht aus Deklarationen von Variablen und aus Anweisungen, so<br />

wie dies im Hauptprogramm main der Fall ist. Außer den im Rumpf deklarierten Variablen können<br />

nun aber auch die formalen Parameter analog wie Variablen verwendet werden. Im Unterschied<br />

zu Variablen muss formalen Parametern vor der Verwendung jedoch kein Wert zugewiesen<br />

werden. Der Grund ist, dass sie, wie wir in Abschnitt 5.2.2 sehen werden, beim Funktionsaufruf<br />

einen Wert erhalten.<br />

Um den Rückgabewert an das aufrufende Unterprogramm zurückzugeben muss der Rumpf einer<br />

Funktion eine sogenannte return-Anweisung enthalten. Diese hat die Form<br />

return Rückgabewert;<br />

Eine erste Wirkung der return-Anweisung ist die Rückgabe des Wertes, der sich durch Auswertung<br />

des Ausdrucks Rückgabewert ergibt. Eine weitere Wirkung der return-Anweisung ist,<br />

dass die Abarbeitung des Funktionsrumpfs unmittelbar nach ihrer Auswertung beendet und an<br />

der Aufrufstelle der Funktion im aufrufenden Unterprogramm fortgefahren wird.<br />

Ein Beispiel für eine return-Anweisung im obigen Programm ist<br />

return imerker;<br />

Mit diesem Aufruf endet die Ausführung des Rumpfes der Funktion minSuche2. Das bedeutet,<br />

dass an der Aufrufstelle der Wert der Funktion der Wert von imerker ist, der k zugewiesen wird.<br />

Falls eine Funktion keinen Wert zurückgibt, d. h. der Rückgabetyp void ist, wird return an<br />

der gewünschten Endstelle der Funktion ohne Angabe eines Rückgabewerts aufgerufen. Die<br />

return-Anweisung kann in diesem Fall auch weggelassen werden. Dann wird die Funktion<br />

komplett in der von main bekannten Weise abgearbeitet und anschließend zur Aufrufstelle zurückgekehrt.<br />

Ein Beispiel für eine Funktion ohne Rückgabewert ist die Hauptprogrammfunktion main. In<br />

den bisherigen Beispielen stand in korrekter Weise jeweils vor main das Rückgabeschlüsselwort<br />

void.<br />

Aufgabe 5.6:<br />

Schreiben Sie eine Funktion „void ausgabe(int[] a)“, welche innerhalb des Quellcodes 5.3 die Ausgabe<br />

des sortierten Folge realisiert. Ändern Sie den Quellcode 5.3 in der Art ab, sodass die neue Funktion<br />

ausgabe anstatt der Zeilen 32-36 zur Anwendung kommt.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!