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

来源:4-12 循环结构之多重循环

Hino

2016-05-11 14:33

#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个吗

写回答 关注

1回答

  • 莫寻墨迹
    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个。

    莫寻墨迹 回复Hino

    i=1,j=i=1,j++,j=2,输出1,然后j<5继续循环,j++.j=3输出j=2,j++,j=4输出j=3,j=5停止,然后i++,i=2.j=i=2,j++,j=3,输出2,第一次就是执行j4次完就等于执行i一次,第二次就执行j3等于执行i一次

    2016-05-16 15:28:32

    共 4 条回复 >

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926028 学习 · 20793 问题

查看课程

相似问题