二维数组,课后作业20之打印数组
#include <stdio.h>int main()
{
int a = {
{1, 2, 3, 4, 5},
{6, 7, 8, 9, 10},
{11, 12, 13, 14, 15},
{16, 17, 18, 19, 20}};
int i, j;
for (i = 0; i < 4; i++)
{
for (j = 0; j < 5; j++)
{
printf("%2d ", a);
if (i + j == 3)
{
printf("\n");
}
}
}
printf("\n");
return 0;
}
这个代码打印之后的结果,跟我想的不一样啊,第一行一样,第二行到7的话不就得换行了吗,因为i=1,j=2了,请问为什么没有换行。 #include <stdio.h>
int main()
{
int a = {
{1, 2, 3, 4, 5},
{6, 7, 8, 9, 10},
{11, 12, 13, 14, 15},
{16, 17, 18, 19, 20}};
int i, j;
for (i = 0; i < 4; i++)
{
for (j = 0; j < 5; j++)
{
printf("i=%d,j=%d\n", i, j);
printf("a[%d][%d]=%2d\n", i, j, a);
if (i + j == 3)
{
printf("i+j==3\n\n");
}
}
}
printf("\n");
return 0;
}
i=0,j=0
a= 1
i=0,j=1
a= 2
i=0,j=2
a= 3
i=0,j=3
a= 4
i+j==3
i=0,j=4
a= 5
i=1,j=0
a= 6
i=1,j=1
a= 7
i=1,j=2
a= 8
i+j==3
i=1,j=3
a= 9
i=1,j=4
a=10
i=2,j=0
a=11
i=2,j=1
a=12
i+j==3
i=2,j=2
a=13
i=2,j=3
a=14
i=2,j=4
a=15
i=3,j=0
a=16
i+j==3
i=3,j=1
a=17
i=3,j=2
a=18
i=3,j=3
a=19
i=3,j=4
a=20
人造人 发表于 2020-4-28 19:27
您辛苦了,明白了,很详细,谢谢啦
页:
[1]