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

这样怎么回事,一样的结果可是检测有问题啊

#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;

}


提问者:慕粉15972561401 2016-07-17 00:44

个回答

  • 慕斯卡2111790
    2016-07-24 14:36:33

    网站的意思是第一行四个空格,第二行三个。。。。。。

    你这样就是第一行三个,第二行两个,实际上也可以,只是整体往左移了一格

    只是不符合网站的要求


  • 9114657
    2016-07-17 11:47:18

    结果是不一样的,如果就j<4那么每行前面的空格数会比j<5的时候少一个,整体上看就是图案整体向后移了一个空格,结果就是在网上编译出来后网站经比较它的已有答案后会认为那是错的,整体没有错误,线下编译器上也是如此,区别就是j<5的比j<4的每行多了一个空格

  • 阅世似东流
    2016-07-17 10:26:32

    #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;

    }

    在标准答案里j应该是小于5