2D-Arrays in C

Einführung

2D Arrays in C bedeutet 'zweidimensionale' Arrays in C.

Sie haben von dem Begriff gehört 'Matrix'. Der Begriff wird häufig in der Mathematik verwendet. Matrix ist eine aus Zeilen und Spalten bestehende Struktur, in der wir beliebig viele Elemente anordnen können. In Programmiersprachen sind 2D-Arrays nichts anderes als die Matrix.

Deklaration des 2D-Arrays

Ein 2D-Array kann wie folgt deklariert werden:

Ganzzahl A[x][y];

In der obigen Deklaration ist 'A' ein Array vom Typ 'int'. Es besteht aus 'x' Anzahl von Zeilen und 'y' Anzahl von Spalten. Es wird immer die Anzahl der Zeilen vor der Anzahl der Spalten geschrieben. Wenn die Erklärung wie folgt lautet:

Ganzzahl A[y][x]; dann steht „y“ für die Anzahl der Zeilen und „x“ für die Anzahl der Spalten.

Zum Beispiel möchten wir ein Array deklarieren, das aus 2 Zeilen und 4 Spalten besteht, dann wird es wie folgt deklariert:

intA[2][4];

und es ist wie

 Column 0Column 1Column 2Column 3
 Row 0A[0][0]A[0][1]A[0][2]A[0][3]
 Row 1A[1][0]A[1][1]A[1][2]A[1][3]

 

Die Werte von Zeilen und Spalten beginnen immer bei 0. Das heißt für 2 Zeilen sind die Namen der angegebenen Zeilen 'Zeile 0' und 'Zeile 1'. Ebenso auch für Spalten.

Jedes Element wird zuerst mit Zeilennummer und dann mit der Spaltennummer geschrieben.

'A[0][0]' bedeutet, dass es das Element der 0 . istth Reihe und 0th Spalte.

'A[0][1]' gehört zur 0th Reihe und 1st Spalte und so weiter.

Hinweis: Um die Gesamtzahl der Elemente in einem Array zu ermitteln, rechnen Sie einfach das Produkt aus der Anzahl der Zeilen mit der Anzahl der Spalten. Im obigen Beispiel sind 2*4=8 Elemente im Array vorhanden.

 

Zuweisen von Werten zu einem 2D-Array

In einem 1D-Array gibt es zwei Methoden, um den Elementen des Arrays Werte zuzuweisen. Ebenso können wir in einem 2D-Array Werte auf zwei Arten zuweisen.

Methode 1: Deklarieren Sie zuerst das Array und weisen Sie dann die Werte den Elementen des Arrays zu.

Angenommen, wir deklarieren ein 2D-Array und weisen den Elementen dann nacheinander einen Wert zu.

Ganzzahl n[2][2];

n[0][0]=50;

n[0][1]=40;

n[1][0]=30;

n[1][1]=10;

Wenn keinem Element des Arrays ein Wert zugewiesen wird, ist sein Wert standardmäßig 0.

Methode 2: Deklaration des Arrays und Zuweisung von Werten an die Elemente, beides erfolgt gleichzeitig.

Ganzzahl n[2][3]={1, 3, 5, 7, 9, 11};

or

Ganzzahl n[2][3]={

        {1, 3, 5},

        {7, 9, 11}};

Beide Aussagen sind gültig, wir können jede von ihnen nach Belieben verwenden.

In der obigen Deklaration ist der Wert von n[0][0] 1, n[0][1] ist 3, n[0][2] ist 5, n[1][0] ist 7, n[ 1][1] ist 9, n[1][2] ist 11.

Hinweis: Bei der Deklaration und Zuweisung der Werte in einem 1D-Array ist es zulässig, den 'size'-Teil des Arrays leer zu lassen, aber in einem 2D-Array ist es wichtig, mindestens den Wert der zweiten Dimension anzugeben, d , müssen Sie die Spaltennummer angeben.

2D-Arrays in C

 

Anwendungen des 2D-Arrays

Da 1D-Arrays gut funktionieren, brauchen Sie dann 2D-Arrays. Wozu dient ein 2D-Array?

Um die Leistung von 5 Schülern in 1 Fach aufzuzeichnen.

Hier können wir ein 1D-Array verwenden, da wir verschiedene Schüler haben, aber das Thema ist für alle gleich.

Es ist wie 1 * 5, dh 1 Zeile und 5 Spalten, die ein 1D-Array ergeben.

Um die Noten von 5 Schülern in 3 Fächern aufzuzeichnen.

Angenommen, wir haben 5 Studenten und jeder Student studiert 3 Fächer. Ziel ist es, die Noten aller Studierenden in allen Fächern zu erfassen. Hier können wir kein 1D-Array verwenden.

Das 2D-Array hilft uns, die Markierungen in Form einer Matrix aufzuzeichnen.

Programm

#enthalten int main () { Float-Markierungen [5] [2]; int i,j; for(i=0;i<5;i++) { printf("Geben Sie die Noten von Schüler %d\n ein",(i+1)); for(j=0;j<2;j++) { printf("Betreff %d\n",(j+1)); scanf("%f",&marks[i][j]); } } for(i=0;i<5;i++) { printf("Notes of student %d\n",(i+1)); for(j=0;j<2;j++) { printf("Subject %d: %f\n",(j+1),marks[i][j]); } } Rückgabe 0; }

 

Ausgabe

2D-Arrays im C-Programm

 

Die obige Ausgabe ist ungefähr so ​​​​wie

 Betreff 1Betreff 2
Studentische 15040
Studentische 29080
Studentische 37545
Studentische 45342
Studentische 57887

 

Der Code sieht vielleicht kompliziert aus, ist aber einfach genug.

Ein 2D-Array namens 'marks' wird mit den Dimensionen 5 (Anzahl der Zeilen) und 2 (Anzahl der Spalten) deklariert.

Die erste 'for'-Schleife wird verwendet, um Eingaben vom Benutzer zu übernehmen.

Eine innere 'for'-Schleife wird verwendet, um ein 2D-Array zu erstellen. Wenn 'i' 0 ist, iteriere 'j' von 0 bis 1, also geben wir den Wert der Noten von Schüler 1 (mit i=0) in beiden (j=0 & j=1) Fächern ein. Dann wird der Wert von 'i' auf 1 aktualisiert und dann geben wir die Daten von Schüler 2 ein. Die Schleife wird fortgesetzt, bis der Wert von 'i' 4 erreicht und endet mit den Daten von Schüler 5.

Andererseits verwenden wir den gleichen Prozess, bei dem wir eine äußere 'for'-Schleife und eine innere 'for'-Schleife verwenden, um die vom Benutzer eingegebenen Daten zu drucken.

Hinterlassen Sie eine Nachricht

Diese Seite verwendet Akismet, um Spam zu reduzieren. Erfahren Sie, wie Ihre Kommentardaten verarbeitet werden.