Dimensionen und Elemente einlesen
In diesem Schritt lernen Sie, wie Sie die Matrixdimensionen und -elemente über Benutzereingaben in einem C-Programm zur Matrixsubtraktion lesen. Wir erstellen ein Programm, das es Benutzern ermöglicht, die Größe und die Werte zweier Matrizen einzugeben.
Erstellen Sie zunächst eine neue C-Datei für unser Matrixsubtraktionsprogramm:
cd ~/project
nano matrix_subtraction.c
Fügen Sie nun den folgenden Code zur Datei hinzu:
#include <stdio.h>
#define MAX_SIZE 100
int main() {
int rows, cols;
int matrix1[MAX_SIZE][MAX_SIZE];
int matrix2[MAX_SIZE][MAX_SIZE];
// Matrixdimensionen einlesen
printf("Geben Sie die Anzahl der Zeilen ein: ");
scanf("%d", &rows);
printf("Geben Sie die Anzahl der Spalten ein: ");
scanf("%d", &cols);
// Elemente der ersten Matrix eingeben
printf("Geben Sie die Elemente der ersten Matrix ein:\n");
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
printf("Geben Sie das Element [%d][%d] ein: ", i, j);
scanf("%d", &matrix1[i][j]);
}
}
// Elemente der zweiten Matrix eingeben
printf("Geben Sie die Elemente der zweiten Matrix ein:\n");
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
printf("Geben Sie das Element [%d][%d] ein: ", i, j);
scanf("%d", &matrix2[i][j]);
}
}
return 0;
}
Beispielausgabe:
Geben Sie die Anzahl der Zeilen ein: 2
Geben Sie die Anzahl der Spalten ein: 2
Geben Sie die Elemente der ersten Matrix ein:
Geben Sie das Element [0][0] ein: 5
Geben Sie das Element [0][1] ein: 6
Geben Sie das Element [1][0] ein: 7
Geben Sie das Element [1][1] ein: 8
Geben Sie die Elemente der zweiten Matrix ein:
Geben Sie das Element [0][0] ein: 1
Geben Sie das Element [0][1] ein: 2
Geben Sie das Element [1][0] ein: 3
Geben Sie das Element [1][1] ein: 4
Kompilieren und ausführen des Programms:
gcc matrix_subtraction.c -o matrix_subtraction
./matrix_subtraction
Codeerklärung:
- Wir definieren eine maximale Matrixgröße von 100x100 mit
MAX_SIZE
.
rows
und cols
speichern die Dimensionen der Matrizen.
- Zwei 2D-Arrays
matrix1
und matrix2
werden erstellt, um Matrixelemente zu speichern.
scanf()
wird verwendet, um Matrixdimensionen und -elemente über Benutzereingaben zu lesen.
- Geschachtelte Schleifen werden verwendet, um Elemente für beide Matrizen einzugeben.