每行空格数量

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

慕粉4236818

2016-10-22 09:06

你们好厉害的样子,为啥第一行不是三个空格?求详解

写回答 关注

3回答

  • JustWannaHugU
    2016-10-22 17:09:09

    http://img.mukewang.com/580b2ca70001703403820297.jpg

    你确定仔细看了?

    慕粉4236... 回复JustWa...

    你也不知道了吧,心虚了,

    2016-10-22 21:40:15

    共 3 条回复 >

  • JustWannaHugU
    2016-10-22 14:02:41

    题目确实没有明确说明“必须打印4个空格”

    但通过观察图形,图案的最后一行*号左侧有1个空格对吧?

    而通过第一行*号与第四行*号对应的位置进行比对可以看出,第一行*左侧有三个空位才能与第四行平齐

    因此整个图形,第一行必须打印4个空格

    JustWa... 回复慕粉4236...

    你确定仔细看了?

    2016-10-22 17:09:27

    共 2 条回复 >

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

    子循环需要全部循环完才能跳出子循环

    第一行的话:

    i赋值给了j,j<5,就一直循环,i=1,so j=i=1,j<5.空格,j++,

    j=2,j<5,空格,j++

    .......循环打印空格,

    一直直到j=5不满足条件为止

    至此共打出了4个空格


    ps:如果明白了谢谢采纳~

    JustWa... 回复慕粉4236...

    题目的确没有写“请你打印四个空格”这几个大字。但你观察这个对称的图形,最后一行左边有一个空格对吧?而第一行的的*号比第四行对应*号前面少了三个空位,因此就必须打4个空格

    2016-10-22 14:00:24

    共 4 条回复 >

C语言入门

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

926207 学习 · 20797 问题

查看课程

相似问题