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

有点不懂这个程序怎么操作的

逻辑清楚,就是不明白它怎么能排成这样,为什么要先打空格而不是*?

提问者:慕标7134229 2018-03-12 20:28

个回答

  • 慕仙8521504
    2018-03-15 19:30:52
    已采纳

    第一个for i=1;进入第二个for输出4个空格;第二个for循环结束,进入第三个for,输出一个*,第三个for循环结束;换行,i++第一个for循环结束;进入第二次大循环,此时i=2也就是第二行,然后以此类推

  • qq_帝都_1
    2018-03-14 14:05:06

     int i, j, k,h;
        for(i=1; i<5; i++)
        {
          
            for(j=1;j<5-i;j++  ) 
            {
                printf(" ");  
            }
           
            for(k=1;k<=i; k++    )
            {
                printf("*");  
            }
             for(h=1;h<i;h++){
                printf("*");
            }
            for(j=i;j<5;j++){
                printf(" ");
            }
          printf("\n");

  • Hedy_Kelly
    2018-03-12 21:27:42

    空格的数量和*的数量是有规律的,第一排是四个空格加一个*,第二排是三个空格加三个*,第三排是两个空格加五个*,第四排是一个空格加七个*。这样是有规律可循的。如果先打*,我也不知道该怎么算了。

  • Masha_Zero
    2018-03-12 21:24:01

    你随便找个能打字的地方打字试一下

    先按5下空格,再打5下*:   

         *****

    先按5下*,再打5下空格:

    *****