NxN Matrix wie lese ich die Daten in ein 2D-Array ein?
-
Das ist ein Teil der Aufgabenstellung:
Schreiben Sie ein C-Programm, das ein Menü mit folgenden Funktionen bereitstellt:
Einlesen und prüfen einer NxN Matrix (Integerwerte).
Berechnung und Ausgabe der Spur der Matrix.
Berechnung der Transponierten der Matrix.Ich scheitere allerdings schon daran das ich es nicht bekomme eine NxN-Matrix einzulesen :((
Die Spur habe ich berechnen können bei einer festgelegten Matrix aber mehr auch nicht...Kann mir irgendjemand helfen?? :)))
-
int i,j,martix[3][3]; for (i=0;i<3;i++) for (j=0;j<3;i++) { scanf("%d", &matrix[i][j]); while(getchar()!='\n'); }
-
Erst mal Danke für die schnelle Beantwortung...
aber wie kann ich die Daten einlesen wenn die Anzahl der Array-Elemente unbekannt ist????
Eben das im ersten durchlauf eine 3x3 Matrix berechnet wir und im zweiten eine 2x2 und so weiter???
-
dann brauchst du malloc()/free() und musst deine matrix selber aufbauen
// code NICHT getestet int i, spalten = 15, zeilen = 20; int **matrix = 0; matrix = malloc(sizeof(int*) * zeilen); for(i = 0; i < zeilen; ++i) matrix[i] = malloc(sizeof(int) * spalten);
auf keinen fall vergessen, die matrix hinterher mit free() wieder aufzurollen.