C 初始化二维数组,然后对其进行转置
这里是初学者,我想用C编写一个程序,用该行的值初始化8 x 10矩阵a[8][10]的每一行(第一行包含所有0,第二行包含所有1等) 打印完这个矩阵后,我想对它进行转置,生成第二个矩阵B[10][8]C 初始化二维数组,然后对其进行转置,c,arrays,loops,for-loop,2d,C,Arrays,Loops,For Loop,2d,这里是初学者,我想用C编写一个程序,用该行的值初始化8 x 10矩阵a[8][10]的每一行(第一行包含所有0,第二行包含所有1等) 打印完这个矩阵后,我想对它进行转置,生成第二个矩阵B[10][8] 我试图使用嵌套for循环,但我似乎无法接近答案 GSL-GNU科学图书馆可能会有所帮助 这里有一个类似的例子,GSL-GNU科学图书馆可能会有所帮助 这里有一个类似的示例如果您想在自己的代码中实现这一点,下面是一个示例: #include<stdio.h> #define ROW
我试图使用嵌套for循环,但我似乎无法接近答案 GSL-GNU科学图书馆可能会有所帮助
这里有一个类似的例子,GSL-GNU科学图书馆可能会有所帮助
这里有一个类似的示例如果您想在自己的代码中实现这一点,下面是一个示例:
#include<stdio.h>
#define ROWS 8
#define COLS 10
int main(int argc, char *argv[])
{
int A[ROWS][COLS];
int B[COLS][ROWS];
int i,j;
/*populate*/
for (i=0; i<ROWS; i++)
{
for (j=0; j<COLS; j++)
{
A[i][j] = 2*i + j;
}
}
/*display*/
printf("=== Original matrix === \n");
for (i=0; i<ROWS; i++)
{
for (j=0; j<COLS; j++)
{
printf("%3d ", A[i][j]);
}
printf("\n");
}
/*transpose*/
for (i=0; i<ROWS; i++)
{
for (j=0; j<COLS; j++)
{
B[j][i] = A[i][j];
}
}
/*display*/
printf("\n\n=== Transposed matrix === \n");
for (i=0; i<COLS; i++)
{
for (j=0; j<ROWS; j++)
{
printf("%3d ", B[i][j]);
}
printf("\n");
}
return 0;
}
#包括
#定义第8行
#定义COLS 10
int main(int argc,char*argv[])
{
int A[行][COLS];
int B[COLS][ROWS];
int i,j;
/*填充*/
对于(i=0;i如果您想在自己的代码中实现这一点,下面是一个示例:
#include<stdio.h>
#define ROWS 8
#define COLS 10
int main(int argc, char *argv[])
{
int A[ROWS][COLS];
int B[COLS][ROWS];
int i,j;
/*populate*/
for (i=0; i<ROWS; i++)
{
for (j=0; j<COLS; j++)
{
A[i][j] = 2*i + j;
}
}
/*display*/
printf("=== Original matrix === \n");
for (i=0; i<ROWS; i++)
{
for (j=0; j<COLS; j++)
{
printf("%3d ", A[i][j]);
}
printf("\n");
}
/*transpose*/
for (i=0; i<ROWS; i++)
{
for (j=0; j<COLS; j++)
{
B[j][i] = A[i][j];
}
}
/*display*/
printf("\n\n=== Transposed matrix === \n");
for (i=0; i<COLS; i++)
{
for (j=0; j<ROWS; j++)
{
printf("%3d ", B[i][j]);
}
printf("\n");
}
return 0;
}
#包括
#定义第8行
#定义COLS 10
int main(int argc,char*argv[])
{
int A[行][COLS];
int B[COLS][ROWS];
int i,j;
/*填充*/
for(i=0;这是一个很大的帮助,谢谢。我正在尝试更改for循环,以便使第一行全部为0,然后下一行全部为1等。在for循环中,我可以实现这一点,对吗?感谢againTo这样做,在填充循环中,您需要一个[i][j]=我;正如您所评论的那样尝试过。这很好,非常感谢。这是一个很大的帮助,谢谢您。我正在尝试更改for循环,以便使第一行全部为0,然后下一行全部为1等。在for循环中,我可以实现这一点。谢谢againTo这样做,在填充循环中,您需要一个[i][j]如你所说,我刚试过。太好了,非常感谢。