Skip to content

Latest commit

 

History

History
98 lines (71 loc) · 2.14 KB

104.md

File metadata and controls

98 lines (71 loc) · 2.14 KB

C++ 程序:查找矩阵的转置

原文: https://www.programiz.com/cpp-programming/examples/matrix-transpose

该程序从用户处获取阶数为r * c的矩阵,并计算该矩阵的转置。

要理解此示例,您应该了解以下 C++ 编程主题:


在此程序中,要求用户输入行数和列数。 在此程序中,rowcolumn的值应小于 10。

然后,要求用户输入矩阵的元素。

程序将计算矩阵的转置并将其显示在屏幕上。


示例:查找矩阵的转置

#include <iostream>
using namespace std;

int main() {
   int a[10][10], transpose[10][10], row, column, i, j;

   cout << "Enter rows and columns of matrix: ";
   cin >> row >> column;

   cout << "\nEnter elements of matrix: " << endl;

   // Storing matrix elements
   for (int i = 0; i < row; ++i) {
      for (int j = 0; j < column; ++j) {
         cout << "Enter element a" << i + 1 << j + 1 << ": ";
         cin >> a[i][j];
      }
   }

   // Printing the a matrix
   cout << "\nEntered Matrix: " << endl;
   for (int i = 0; i < row; ++i) {
      for (int j = 0; j < column; ++j) {
         cout << " " << a[i][j];
         if (j == column - 1)
            cout << endl << endl;
      }
   }

   // Computing transpose of the matrix
   for (int i = 0; i < row; ++i)
      for (int j = 0; j < column; ++j) {
         transpose[j][i] = a[i][j];
      }

   // Printing the transpose
   cout << "\nTranspose of Matrix: " << endl;
   for (int i = 0; i < column; ++i)
      for (int j = 0; j < row; ++j) {
         cout << " " << transpose[i][j];
         if (j == row - 1)
            cout << endl << endl;
      }

   return 0;
}

输出

Enter rows and columns of matrix: 2
3

Enter elements of matrix:
Enter element a11: 1
Enter element a12: 2
Enter element a13: 9
Enter element a21: 0
Enter element a22: 4
Enter element a23: 7

Entered Matrix:
1  2  9

0  4  7

Transpose of Matrix:
1  0

2  4

9  7