Könnt ihr mir ein paar Übungen als Vorbereitung zu meinem kommenden Programmiertest in C stellen?

2 Antworten

Ein beliebter Aufgabentyp zum Punkt Variablen/Datentypen ist eine Auflistung von vorgegebenen Codezeilen, zu denen du schreiben sollst, ob die jeweils valid sind.

Beispiel:

float a = 3;
char b[] = 0;
int c = 'a';

In diesem Fall ist nur die zweite Zeile in ihrer Syntax ungültig.

Es lohnt sich daher, sich nochmals mit Literalen auseinanderzusetzen und zu schauen, welche Werte in welche Datentypen passen. Hierzu auch selbst nochmal zu experimentieren, ist keine schlechte Idee.

Bezüglich Kontrollstrukturen und Arrays eignet sich ein Mix aus Übungen zu Filtern und dynamischer Programmierung. Bei Arrays und Strings geht es in der Regel darum, ihre Länge zu berücksichtigen.

  • Gib in der Konsole ein (ausgefülltes) Rechteck aus. Welches Zeichen du dafür benutzen möchtest, ist dir überlassen. Höhe und Breite sollen dynamisch setzbar sein.
  • Kopiere Arrayeinträge in ein anderes Array (z.B. zwei Strings "Hello" und "world" in einen).
  • Gib einen String rückwärts aus, aber überspringe (ab dem ersten Zeichen) immer drei Zeichen ("Hello world!" => "!r l").
  • Gib die ersten zehn Ziffern der Fibonacci-Reihenfolge aus. Bis auf die ersten beiden Startwerte (1) wird jeder Schritt dynamisch berechnet.
  • Berechne die Summe aller ungeraden Zahlen eines int-Arrays.
  • Schrumpfe ein int-Array, sodass es nur noch Plätze mit geraden Zahlen enthält.
  • Erstelle eine Funktion, die den kleinsten und größten Wert eines int-Arrays zurückgibt. Du kannst für die Rückgabe des Ergebnisses ein struct nutzen oder, falls du das noch nicht kennst, einfach ein Array.
  • Erstelle eine Funktion, die prüft, ob ein Wort einem Palindom entspricht.

Prinzipiell würde ich dir empfehlen, Lösungswege zuerst in Form einer Skizze / eines Programmablaufplans zu entwerfen, bevor du dich damit beschäftigst, dies in richtiger C-Syntax herunterzuschreiben. Es vereinfacht die Aufgabe und kann dich ebenso vor Fehlern (z.B. nicht berücksichtigten Ausnahmefällen) bewahren.

Unterschiedliche Schleifentypen kannst du leicht üben, indem du die Schleifen aus deinen bisherigen Übungen in einen anderen Typ konvertierst/umschreibst.

Noch andere Übungen findest du auf Exercism oder w3resource.

Es ist einfach in jeder Programmiersprache das gleiche...

Ich mache tatsächlich genau die selben Schritte wenn ich länger nicht eine Sprache benutzt habe um wieder reinzukommen

Einfach mal ein paar variablen deklarieren und damit herumspielen. Hast du das System zum Laufen bekommen?

Ich werde dir jetzt keinen Übungskatalog erstellen, das haben andere schon bis zur Erschöpfung getan. Da wirst du im Internet sicher fündig...

Meist hilft nicht "dieser eine Kurs" sodern eine Mischung aus YT, Büchern und Kursen...

ChatGPT kann dir sicher ein paar individuelle Codeteile zum Rumspielen erstellen