Infos zur Klausurvorbereitung C-Programmierung

Wie versprochen habe ich Ihnen hier nochmal einige Hinweise zur Vorbereitung auf die Klausur C-Programmierung zusammengestellt. Für die Klausur sollten Sie ein Gefühl für die Programmierung in C entwickeln, daher die wichtigsten - wenn möglicherweise auch unangenehmsten - Hinweise vorweg:

Hier eine (nicht unbedingt vollständige) Zusammenfassung der im Praktikum angeschnittenen Themen:

Videos zur Vertiefung der C-Programmierung

Falls Sie sich für C-Programmierung interessieren und einige der Themen nochmal vertiefen möchten, empfehle ich Ihnen die auf Youtube verfügbare Vorlesung "Programming Paradigms" der Stanford University.

In Lecture 5 finden Sie beispielsweise eine detaillierte Erklärung zu der nur sehr knapp behandelten Übungsaufgabe 10a (Sortieren mit qsort() und Vergleichsfunktion cmp()). Lecture 8 gibt einen tieferen Einblick in die Funktionsweise von malloc() und free().

Beispielprogramme

Hier finden Sie nochmal einige Beispielprogramme, zur Demonstration verschiedener im Praktikum besprochener Konzepte, wie dem Durchlaufen einer Liste, Rekursion, und ähnliches. Versuchen Sie die Programme zu verstehen (nicht auswendig lernen!).

Versuchen Sie unbedingt auch nochmal das Beispielprogramm ueb11c.c zu verstehen. Es enthält eine Kombination aus allen Konzepten (Zeilenweise lesen, Speicher allokieren, an Liste anhängen, durchlaufen, ausgeben, Speicher freigeben. Der im Kommentar befindliche Hinweis, dass das Programm mittels "ueb11c [-r] < datei" aufgerufen werden soll, führt dazu, dass jede Zeile der Datei als Eingabe auf der Kommandozeile eingegeben wird (wie wenn Sie den Inhalt der Datei als Eingabe für gets() abtippen). Siehe dazu z.B. die Beispiele hier: http://www.fibel.org/linux/lfo-0.6.0/node111.html

Probeklausur

Die Klausuren finden Sie hier:


Ich wünsche Ihnen viel Erfolg!