In dit voorbeeld leer je de transponering van een matrix in C-programmering te vinden.
Om dit voorbeeld te begrijpen, moet u kennis hebben van de volgende C-programmeeronderwerpen:
- C Arrays
- C Multidimensionale arrays
Het transponeren van een matrix is een nieuwe matrix die wordt verkregen door de rijen en kolommen uit te wisselen.
In dit programma wordt de gebruiker gevraagd om het aantal rijen r en kolommen c in te voeren. Hun waarden zouden in dit programma minder dan 10 moeten zijn.
Vervolgens wordt de gebruiker gevraagd om de elementen van de matrix (van bestelling r*c
) in te voeren.
Het onderstaande programma berekent vervolgens de transponering van de matrix en drukt deze op het scherm af.
Programma om de transponering van een matrix te vinden
#include int main() ( int a(10)(10), transpose(10)(10), r, c, i, j; printf("Enter rows and columns: "); scanf("%d %d", &r, &c); // Assigning elements to the matrix printf("Enter matrix elements:"); for (i = 0; i < r; ++i) for (j = 0; j < c; ++j) ( printf("Enter element a%d%d: ", i + 1, j + 1); scanf("%d", &a(i)(j)); ) // Displaying the matrix a()() printf("Entered matrix: "); for (i = 0; i < r; ++i) for (j = 0; j < c; ++j) ( printf("%d ", a(i)(j)); if (j == c - 1) printf(""); ) // Finding the transpose of matrix a for (i = 0; i < r; ++i) for (j = 0; j < c; ++j) ( transpose(j)(i) = a(i)(j); ) // Displaying the transpose of matrix a printf("Transpose of the matrix:"); for (i = 0; i < c; ++i) for (j = 0; j < r; ++j) ( printf("%d ", transpose(i)(j)); if (j == r - 1) printf(""); ) return 0; )
Uitvoer
Rijen en kolommen invoeren: 2 3 Matrixelementen invoeren: element a11 invoeren: 1 element a12 invoeren: 4 element a13 invoeren: 0 element a21 invoeren: -5 element a22 invoeren: 2 element a23 invoeren: 7 matrix invoeren: 1 4 0 -5 2 7 Transponeren van de matrix: 1-5 4 2 0 7