我这个代码让编译器输不出来

来源:4-12 循环结构之多重循环

emmmmmmok

2019-08-09 15:40

#include <stdio.h>

int main()

{

    int i, j, k,h;

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

    {

        /* 观察每行的空格数量,补全循环条件 */

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

        {

            printf(" ");    //输出空格

        }

        /* 观察每行*号的数量,补全循环条件 */

        for(k=2i-1;k<1;k--     ) //k依次减少直到=0 输出对应星号

        {

            printf("*");   //每行输出的*号

        }

        printf("\n");     //每次循环换行

    }

    return 0;

}


写回答 关注

4回答

  • 小神0x00
    2019-08-09 15:51:26
    已采纳

    https://img1.mukewang.com/5d4d252900019d6d04820474.jpg

    K的值每行是*的个数,分别为1,3,5,7。

    该循环不符合要求。

    emmmmm...

    谢谢你帮我忙

    2019-08-09 16:35:44

    共 1 条回复 >

  • 慕粉5438561
    2019-08-09 17:00:43

    for(k=2 * i-1;k  >=  1;k--     ) //k依次减少直到=0

  • 小神0x00
    2019-08-09 15:53:15

    输不出来是因为第二个内循环根本不会进行,当i=1,k=1,不符合k<1

  • 小小疾飞
    2019-08-09 15:45:17

    输出了空格只是你看不见。

    for(k=2i-1;k<1;k--     ) //k依次减少直到=0 输出对应星号

            {

                printf("*");   //每行输出的*号

            }

    星号怎么输出

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926028 学习 · 20793 问题

查看课程

相似问题