Zusammenfassung
In dieser Lektion hast du gelernt:
- Ein Array speichert mehrere Werte desselben Typs, seine Elemente, unter einem Namen:
int punkte[5] = {80, 92, 75, 60, 88};. Beiint punkte[] = {80, 92, 75};zählt der Compiler die Elemente selbst. Die Größe eines Arrays ist fest und kann sich nicht ändern. - Jedes Element hat einen Index, ab 0 gezählt, der letzte Index ist also die Größe − 1.
punkte[0]liest das erste Element,punkte[2] = 79;ändert das dritte. Ein Element verhält sich wie eine Variable seines Typs, deshalb funktioniert auchpunkte[1] += 5;. - Ein Index kann eine Variable sein, deshalb kann eine
for-Schleife alle Elemente durchlaufen:for (int i = 0; i < anzahl; i++), mit<, nicht<=. Ein ganzes Array kannst du nicht mitprintfausgeben: Gib es Element für Element in einer Schleife aus. - Ein Index außerhalb des Arrays ist ein Fehler. Ist er eine Zahl im Code, lässt sich das Programm nicht kompilieren (
array index 5 is past the end of the array). Ist er eine Variable, bricht das Programm mitRuntimeError: unreachableab. C selbst prüft Indizes nicht. - Die Anzahl der Elemente kannst du in einer Konstanten speichern,
const int ANZAHL = 5;, oder aus dem Array berechnen:int anzahl = sizeof(punkte) / sizeof(punkte[0]);. Mitsizeofbleiben die Schleifen richtig, wenn sich das Array ändert. - Muster mit Arrays: die Summe (eine Variable, die vor der Schleife bei 0 beginnt,
+=in der Schleife, das Ergebnis nach der Schleife ausgegeben), der Durchschnitt ((double)summe / anzahl), das Zählen (ein Zähler mit++in einerif-Anweisung) und der größte Wert (beginne mit dem ersten Element, nicht mit 0, und merke dir auch den Index, wenn du wissen musst, wo er steht). int quadrate[10];erstellt ein Array ohne Werte, das eine Schleife füllen kann.int stimmen[4] = {0};setzt alle Elemente auf null. Einem Array lässt sich mit=nichts zuweisen, und man kann es damit nicht kopieren: Kopiere es Element für Element.- Ein zweidimensionales Array hat Zeilen und Spalten:
int sitze[3][4].sitze[1][2]ist das Element in der Zeile mit dem Index 1 und der Spalte mit dem Index 2. Zwei verschachtelte Schleifen durchlaufen alle Elemente.
Nach dieser Lektion folgt wieder ein kleines Projekt: eine Verkaufswoche an einem Limonadenstand. Danach erfährst du in der Lektion über Zeichenketten, dass auch Text in C ein Array ist: ein Array aus Zeichen. Aber zuerst übst du, was du kannst, an den Temperaturen einer Woche.
So schreibst du es:
"Shift + 2
%Shift + 5
/Shift + 7
\Alt Gr + ß
{Alt Gr + 7
}Alt Gr + 0
<<
>Shift + <
[Alt Gr + 8
]Alt Gr + 9
##
&Shift + 6
|Alt Gr + <
*Shift + +
Anweisungen
- 1
Das Array
temperaturenenthält die Temperaturen einer Woche. Berechne die Durchschnittstemperatur und gib sie mit einer Nachkommastelle aus:Durchschnitt: 18.3. Die Anzahl der Tage ermittelst du mitsizeof. - 2
Finde den wärmsten Tag. Gib seine Nummer, ab 1 gezählt, und seine Temperatur aus:
Wärmster: Tag 5, 23 Grad.