问答详情
源自:4-12 循环结构之多重循环

5<=5 是对的为什么只有5行每行5个 不应该6个吗

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

5<=5  是对的为什么只有5行每行5个 不应该6个吗

提问者:Hino 2016-05-11 14:33

个回答

  • 莫寻墨迹
    2016-05-11 15:32:44
    已采纳

    第一次执行后*****,j=2

    第二次*****,j=3

    第三次*****,j=4

    第四次*****,j=5

    第五次执行后*****,j=6,不符合j<=5,结束输出

    j++是j自增1,j<=5此处可以看出j<6,6不符合,初始值为1,5-1+1=5,(j<=5,5个,减去初始值1,再加上第5个本身的1,j=5-1+1,当然就只有5个。

    如果是6个,那应该(j=0;j<=5;j++),j<=5,5个,减去初始值0,加上第5个本身,5-0+1,就是6个。