C语言中的矩阵转置

时间:2016-10-14 08:42:15

标签: arrays multidimensional-array

如何用C语言进行Matrix Transposition?程序会询问用户行数和列数以及矩阵的数据。输出将是矩阵的转置。

2 个答案:

答案 0 :(得分:0)

我们假设我们有一个矩阵(x,y),其中x是行,y是列。 如果只需要显示矩阵的转置,则可以在打印时简单地切换x和y(因此您将按行和列打印行作为行)。 输出将是矩阵的转置。

答案 1 :(得分:0)

这是一些代码

// define the lenght of the matrix
int lenght_x = 3;
int lenght_y = 3;
// matrix
int mat[lenght_x][lenght_y];
// indexes
int x,y;

// reading values from user input
for(y=0; y<lenght_y; y++){
  for(x=0; x<lenght_x; x++){
    scanf("%d",&mat[x][y]);
  }
}

// printing the matrix
for(y=0; y<lenght_y; y++){
  for(x=0; x<lenght_x; x++){
    printf("%d  ",mat[x][y]);
  }
  printf("\n");
}

printf("\n");

// printing the tranpose of the matrix
for(y=0; y<lenght_y; y++){
  for(x=0; x<lenght_x; x++){
    printf("%d  ",mat[y][x]);   // !!! HERE I SWITCHED X AND Y
  }
  printf("\n");
}

我认为这很简单......但旧线程应该有几个答案