Програма C за намиране на транспониране на матрица

В този пример ще се научите да намирате транспонирането на матрица в програмирането на C.

За да разберете този пример, трябва да имате познанията по следните теми за програмиране на C:

  • C масиви
  • C Многомерни масиви

Транспонирането на матрица е нова матрица, която се получава чрез размяна на редове и колони.

В тази програма потребителят трябва да въведе броя на редовете r и колоните c. Стойностите им в тази програма трябва да са по-малки от 10.

След това потребителят е помолен да въведе елементите на матрицата (от поръчка r*c).

След това програмата по-долу изчислява транспонирането на матрицата и я отпечатва на екрана.

Програма за намиране на транспониране на матрица

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

Изход

Въведете редове и колони: 2 3 Въведете елементи на матрицата: Въведете елемент a11: 1 Въведете елемент a12: 4 Въведете елемент a13: 0 Въведете елемент a21: -5 Въведете елемент a22: 2 Въведете елемент a23: 7 Въведена матрица: 1 4 0 -5 2 7 Транспониране на матрицата: 1 -5 4 2 0 7 

Интересни статии...