YYhotpot 2022-03-09 17:34 采纳率: 100%
浏览 27
已结题

0到底是不是5的倍数?n = 0; if(n % 0 == 5) printf("\n");

在《C程序设计》第五版的第五章例5.6中有个困惑点。

题目:
输出一下 4 * 5 的矩阵。

1 2 3 4 5
2 4 6 8 10
3 6 9 12 15
4 8 12 16 20

代码如下:

#include<stdio.h>
int main()
{
  int i, j, **n = 0**;
  for(i = 1; i <= 4; i ++)
    for(j = 1; j <= 5; j ++, n ++)
      {if(n % 5 == 0) printf("\n");
        printf("%d\t", i * j);
      }
  printf("\n");
  return 0;
}

n的初始值为0,在内for循环第一遍的时候应该还是0吧?如果是的话那不应该进入if语句中输出一个“回车”吗?是我哪里理解出问题了吗?

还是说0 % 5 != 0?

谢谢~

  • 写回答

3条回答 默认 最新

  • CSDN专家-link 2022-03-09 17:37
    关注

    如果按n%5==0的判断,0是5的倍数
    你意思是代码没有输出换行符吗?
    测试了一下,开头输出换行了啊

    img


    你不是要这个效果么?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月17日
  • 已采纳回答 3月9日
  • 创建了问题 3月9日