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

我怎么理解不了这个代码,j和k都是怎么实现的

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


提问者:慕移动8214611 2020-03-02 15:58

个回答

  • WE_Xing
    2020-03-02 19:25:44

    你先看 k 和 i 的关系式,然后你就知道了 * 从上向下就是 1, 3, 5, 7;因为 i 只能取到4,所以总共4行;

    再看 j ,当 i 取 1时 也就是第一行,j 会从 1加 到4,就出来了4个空格,以此类推;

    可能我也说的不准确,希望能帮到你;   我要赶紧去上课了~~~