c语言怎么实现n*n的矩阵转置

详细说明

在 C 语言中,实现 n*n 矩阵的转置可以通过以下步骤完成:

  1. 定义矩阵:首先定义一个 n*n 的矩阵,并初始化矩阵的元素。

  2. 创建转置矩阵:定义一个与原矩阵大小相同的矩阵来存储转置后的结果。

  3. 转置矩阵:遍历原矩阵,将每个元素的行列位置互换,并存入转置矩阵。

  4. 输出结果:打印原矩阵和转置矩阵以验证结果。

示例代码

下面是一个示例代码,演示如何实现 n*n 矩阵的转置:

c
#include <stdio.h> #define N 3 // 矩阵的大小 void printMatrix(int matrix[N][N]) { for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { printf("%d ", matrix[i][j]); } printf("\n"); } } void transposeMatrix(int matrix[N][N], int transposed[N][N]) { for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { transposed[j][i] = matrix[i][j]; } } } int main() { int matrix[N][N] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; int transposed[N][N]; printf("Original matrix:\n"); printMatrix(matrix); transposeMatrix(matrix, transposed); printf("Transposed matrix:\n"); printMatrix(transposed); return 0; }

说明

  1. 定义矩阵:矩阵 matrix 初始化为 3x3 大小,可以根据需要调整 N 的值来处理其他尺寸的矩阵。

  2. 转置函数transposeMatrix 函数将原矩阵 matrix 的每个元素 matrix[i][j] 转移到转置矩阵 transposed[j][i] 的相应位置。

  3. 打印矩阵printMatrix 函数用于打印矩阵的内容,验证转置的结果是否正确。

关键字

C语言, 矩阵转置, 矩阵操作, 代码示例, 二维数组, 转置算法