为什么他出现了才让分行
这个里面为什么会出现if (i +j ==3)这个是什么意思为什么只有他出现了才会让整个展示出来分行#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;
} 虽然不太清楚你想问什么 但是程序是不是错了 应该是printf("%2d ", a);吧
阿萨德按时 发表于 2021-12-15 09:16
虽然不太清楚你想问什么 但是程序是不是错了 应该是printf("%2d ", a);吧
就是为什么只有他出现了,最后所展现出的才会换行,没有他最后展现的就是一行数 wwWsir 发表于 2021-12-15 10:23
就是为什么只有他出现了,最后所展现出的才会换行,没有他最后展现的就是一行数
自己把循环变量的值,带进去跑一下,不就全清楚了 wp231957 发表于 2021-12-15 11:14
自己把循环变量的值,带进去跑一下,不就全清楚了
额,我不太懂,能否详细说一下 wwWsir 发表于 2021-12-15 10:23
就是为什么只有他出现了,最后所展现出的才会换行,没有他最后展现的就是一行数
因为if (i + j == 3)条件成立的话就会执行printf("\n");就是打印输出换行符\n
阿萨德按时 发表于 2021-12-15 11:28
因为if (i + j == 3)条件成立的话就会执行printf("\n");就是打印输出换行符\n
为什么是i +j ==3才换行? 为什么不是i + j ==5换行? 本帖最后由 阿萨德按时 于 2021-12-16 09:18 编辑
wwWsir 发表于 2021-12-15 11:31
为什么是i +j ==3才换行? 为什么不是i + j ==5换行?
{:10_266:}为什么的话我也不清楚 i + j == 3第一次循环会在第四个值换行,打印出1 2 3 4
5
第二次就是在第三个值换行,打印1 2 3 4
5 6 7 8
9 10
依次类推
但是i + j == 5第一次循环不会换行,第二次循环会在最后一个值换行,第一行就会打印10个值
页:
[1]