Program C k nalezení transpozice matice

V tomto příkladu se naučíte najít transpozici matice v programování C.

Abychom pochopili tento příklad, měli byste mít znalosti o následujících programovacích tématech jazyka C:

  • C pole
  • C Multidimenzionální pole

Transpozice matice je nová matice, která se získá záměnou řádků a sloupců.

V tomto programu je uživatel vyzván k zadání počtu řádků r a sloupců c. Jejich hodnoty by v tomto programu měly být menší než 10.

Poté je uživatel vyzván k zadání prvků matice (objednávky r*c).

Níže uvedený program poté spočítá transpozici matice a vytiskne ji na obrazovku.

Program pro nalezení transpozice matice

#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; ) 

Výstup

Zadejte řádky a sloupce: 2 3 Zadejte prvky matice: Zadejte prvek a11: 1 Zadejte prvek a12: 4 Zadejte prvek a13: 0 Zadejte prvek a21: -5 Zadejte prvek a22: 2 Zadejte prvek a23: 7 Zadaná matice: 1 4 0-5 2 7 Transpozice matice: 1-5 4 2 0 7 

Zajímavé články...