题解 | #菱形图案#

菱形图案

https://www.nowcoder.com/practice/8b935f8ffe99445dbd42494febd13e45

#include<stdio.h>
int main()
{
    int a,i,j,k;
    while(scanf("%d",&a)!=EOF)//多组输入标配,有输入,scanf()不等于EOF,进入循环
    {
        for(i=1;i<=a+1;i++)//先正三角输出
        {
            for(j=1;j<=a-i+1;j++)//空格从上往下看,随行数增加而减小,所以是j<=a-i+1
            {
                printf(" ");
            }
            for(k=1;k<=i;k++)//星星从上往下看,随行数增加而增加,所以是k<=i
            {
                printf("* ");
            }
            printf("\n");
        }//前a+1行
        for(i=1;i<=a;i++)//再倒三角输出后a行
        {
            for(j=1;j<=i;j++)//空格从上往下看,随行数增加而增加,所以是j<=i
            {
                printf(" ");
            }
            for(k=1;k<=a-i+1;k++)//星星从上往下看,随行数增加而减小,所以是k<=a-i+1
            {
                printf("* ");
            }
            printf("\n");
        }
    }
    return 0;
} 

总结:

从上往下看,随行数增加而增加,是<=变化的行数(前提,从1开始)

随行数增加而减小,是<=总行数减去变化的行数加1(前提,从1开始)

全部评论

相关推荐

有趣的牛油果开挂了:最近这个阶段收到些杂七杂八的短信是真的烦
点赞 评论 收藏
分享
投递大华股份等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务