Zugriff auf Elemente
Teil des Abschnitts Fundamentals der C-Journey von Coddy — Lektion 54 von 63.
Arrays speichern mehrere Werte desselben Typs. Wir verwenden die Indexposition, um auf einzelne Elemente in einem Array zuzugreifen.
In C beginnen Array-Indizes bei 0. Das bedeutet, dass das erste Element bei Index 0 liegt, das zweite bei Index 1 und so weiter.
Erstellen Sie ein Integer-Array mit 5 Elementen:
int numbers[5] = {10, 20, 30, 40, 50};Greifen Sie auf das erste Element zu (Index 0):
int firstElement = numbers[0];Nach der Ausführung des obigen Codes enthält firstElement:
10Greifen Sie auf das dritte Element zu (Index 2):
int thirdElement = numbers[2];Dies speichert den Wert 30 in thirdElement.
Der Versuch, auf ein Element außerhalb der Array-Grenzen zuzugreifen (wie numbers[5] in unserem Beispiel), führt zu undefiniertem Verhalten und kann Programmabstürze verursachen.
Aufgabe
EinfachSchreibe eine Funktion namens getElement, die Folgendes tut:
- Ein Integer-Array und dessen Größe als Parameter entgegennimmt
- Einen Index-Parameter entgegennimmt
- Wenn der Index gültig ist (innerhalb der Array-Grenzen), das Element an diesem Index ausgibt
- Wenn der Index ungültig ist (außerhalb der Array-Grenzen), „Index out of bounds“ ausgibt
Denke daran, dass der Index in Arrays bei 0 beginnt. Wenn also das 6. Element gewünscht ist, musst du auf array[5] zugreifen
Spickzettel
Arrays speichern mehrere Werte desselben Typs. Array-Indizes beginnen bei 0.
Erstellen Sie ein Integer-Array:
int numbers[5] = {10, 20, 30, 40, 50};Greifen Sie mit eckigen Klammern und dem Index auf Elemente zu:
int firstElement = numbers[0]; // Ruft 10 ab
int thirdElement = numbers[2]; // Ruft 30 abDer Zugriff auf Elemente außerhalb der Array-Grenzen führt zu undefiniertem Verhalten und kann Abstürze verursachen.
Probier es selbst
#include <stdio.h>
void getElement(int arr[], int size, int index) {
// Schreiben Sie hier Ihren Code
}
int main() {
int size, index;
// Lesen Sie die Größe des Arrays ein
scanf("%d", &size);
int arr[size];
// Lesen Sie die Array-Elemente ein
for(int i = 0; i < size; i++) {
scanf("%d", &arr[i]);
}
// Lesen Sie den zuzugreifenden Index ein
scanf("%d", &index);
getElement(arr, size, index);
return 0;
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Fundamentals
2Variablen
DatentypenIntegerFloat - DoubleZeichenBooleansKonstantenprintf GrundlagenBenennungsregeln für VariablenType Casting Teil 1Type Casting Teil 2Wiederholungs-Challenge3Operatoren
Arithmetische OperatorenModulo-OperatorInkrement/DekrementZuweisungsoperatorenRelationale OperatorenLogische Operatoren Teil 1Logische Operatoren Teil 2Logische Operatoren Teil 3Wiederholungs-Challenge