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

请求大佬解答我的疑惑

课件i j并没有明确定义行与列,为什么可以输出矩阵??

题目中,i,j,k分别是行,空格数,*的数量么??

为什么呈现三角形?


提问者:PRRRR 2018-10-22 16:16

个回答

  • PRRRR
    2018-10-22 17:39:04

    #include <stdio.h>

    int main()

    {

        int i, j, k;

        for(i=1; i<5; i++)

        {


            for(    j=i ;  j<4 ;  j++  ) 

            {


                printf(".");    


            }


            for( k=1 ;  k<=2*i-1 ;  k++     ) 


            {


                printf("*");   


            }


            printf("\n");     

        }


        return 0;

    }

    谢谢您!讲的很清楚,我又把空格换了.以后搞明白了不是因为对称,就是空格占位然后依次排列。清晰了很多


  • 宝慕林5562854
    2018-10-22 17:05:09

    #include <stdio.h>

    int main()

    {

        int i, j, k;

        for(i=1; i<5; i++)

        {

            for(    j=i ;  j<5 ;  j++  )  /*这里是一个内循环,就是在基于外循环的数然后执行,然后这个循环完了再执行下一个内循环,然后这里第一次就执行了4次循环,所以输出了4个空格,然后当走完一圈过后i变大了一个值,所以说第二圈的时候这个循环就会少执行一次,然后第二排的空格自然少了一个*/

            {

                printf(" ");    

            }

           

            for( k=0 ;  k<2*i-1 ;  k++     ) //这里同理

            {

                printf("*");   

            }

            printf("\n");     //每次循环换行,因为这个在两个内循环外面,所以两个内循环执行完了,就输出这个换行

        }

        return 0;

    }