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

关于4--12的问题

这个代码是怎样循环的,第一行不是有6个空格吗,第一行的星号为什么实在中间,而不是在末尾?

提问者:桂圆粥 2016-12-18 20:57

个回答

  • qq_辉棒棒糖_0
    2016-12-19 11:35:17

    对于慕课的标准答案我也不是很理解,我按自己的理解写了一份代码,在Microsoft Visual Studio 2008中执行的效果是一样的;你可以认为第1行最左边的空格为4或为3,往下依次减少。

    #include<stdio.h>

    int main(void)

    {

    int i, j, k;

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

    {

    for(j = 5-i;j >=1 ;j--)   //这里5-i可以改为4-i,这样执行的效果是最后一栏前无空格

    {

    printf(" ");    

    }

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

    {

    printf("*");   

    }

    printf("\n");               

    }

        return 0;