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

为什么是j<5而不是j<4,输出答案看着好像一样? 是输出一个正三角形

#include <stdio.h>
int main()
{
    int i, j, k;
    for(i=1; i<5; i++)
    {
        /* 观察每行的空格数量,补全循环条件 */
        for(j=i;j<4;j++) 
        {
            printf(" ");    //输出空格
        }
        /* 观察每行*号的数量,补全循环条件 */
        for(k=0;k<2 * i - 1;k++)
        {
            printf("*");   //每行输出的*号
        }
        printf("\n");     //每次循环换行
    }
    return 0;
}

提问者:慕尼黑9017146 2020-01-07 17:46

个回答

  • 慕少6168890
    2020-01-08 08:57:52
    已采纳

    就是说你写个四,他只会输出三行或四行,因为前面的父循环要先让子循环输出完,你输个四,最多出现四行*就会结束循环

  • 不太萌
    2020-01-11 16:01:06

    多输入了一个空格嘛,就是说他给你例子中最下边的一行前边也有一个空格

  • 慕少6168890
    2020-01-07 20:53:00

    因为定义的变动趋势会改变