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

虽然输出了正确的图形 但我有点不理解标准答案里空格的输出过程

这是我的答案。。标准答案为 (j=i;j<5;j++) 这样不就输出了5个空格?

#include <stdio.h>
int main()
{
    int i, j, k;
    for(i=1; i<5; i++)
    {
        /* 观察每行的空格数量,补全循环条件 */
        for(    j=1 ;  j<=(4-i) ;  j++  )  
        {
            printf(" ");    //输出空格
        }
        /* 观察每行*号的数量,补全循环条件 */
        for( k=1 ;  k<=(2*i-1) ;  k++  ) 
        {
            printf("*");   //每行输出的*号
        }
        printf("\n");     //每次循环换行
    }
    return 0;
}


正在回答

3 回答

你的答案是正确的,要想达到这个结果,可以有不同的思路和途径

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

听星光过银河 提问者

非常感谢!
2016-08-01 回复 有任何疑惑可以回复我~

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

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

然后,例如j<=(4-i),第一次循环,i=1,循环了三次,就输出三个空格,然后接着执行下一个对*的输出,i=1,k<=(2*i-1)即i<=1,输出一个*,此时第一行就有三个空格然后一个*,然后,换行符,下一行,同理。然后四次之后,得到答案。

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

听星光过银河 提问者

兄弟 我知道自己是对的哦 我是问 标准答案那样不是输出了5个空格么
2016-07-05 回复 有任何疑惑可以回复我~
#2

五只呆河马 回复 听星光过银河 提问者

标准答案五个空格是因为它做不到三个空格,你如果认为可以,可以去试试。不过,空格多少无所谓,图形出来就好。
2016-07-05 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

虽然输出了正确的图形 但我有点不理解标准答案里空格的输出过程

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