Arrays C编程:如何将整数数组打印为2d数组?
我有一个整数数组:Arrays C编程:如何将整数数组打印为2d数组?,arrays,c,Arrays,C,我有一个整数数组: int*list=malloc((m*n)*sizeof(int))变量m和n是2d数组所需的维度 我用随机数填充数组,并用一个简单的for(inti=0;Ilist[i*m+j]@interjay-yep这就是解决方案。谢谢:)我知道空格,我忘了写下来。这解决了我的问题。非常感谢:) 444 555 100100100
int*list=malloc((m*n)*sizeof(int))代码>变量m
和n
是2d数组所需的维度
我用随机数填充数组,并用一个简单的for(inti=0;I哪个打印:
4
5
100
7
9
3
74
1
6
我的问题是如何将数组打印为二维数组而不是一维数组
以下是我的尝试:
for (int i = 0; i < n; i++)
{
for (int j = 0; j < m; j++)
{
printf("%d", list[i]);
}
printf("\n");
}
将数组的其余部分丢失在某处。第一行(i=0
)应打印元素0,1,m-1
第二行(i=1
)应打印元素m,m+1,…,2*m-1
第i
行应打印元素m*i,m*i+1,m*i+m-1
因此,您应该打印list[i*m+j]
,而不是list[i]
另外,您可能需要在同一行中的元素之间添加一些空格。list[i]
->list[i*m+j]
@interjay-yep这就是解决方案。谢谢:)我知道空格,我忘了写下来。这解决了我的问题。非常感谢:)
444
555
100100100