为了账号安全,请及时绑定邮箱和手机立即绑定

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

#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 回答

https://img1.sycdn.imooc.com//5d4d252900019d6d04820474.jpg

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

该循环不符合要求。

0 回复 有任何疑惑可以回复我~
#1

emmmmmmok 提问者

谢谢你帮我忙
2019-08-09 回复 有任何疑惑可以回复我~

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

0 回复 有任何疑惑可以回复我~

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

0 回复 有任何疑惑可以回复我~

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

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

        {

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

        }

星号怎么输出

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

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

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信