题解 | #圣诞树#

圣诞树

https://www.nowcoder.com/practice/9a03096ed8ab449e9b10b0466de29eb2

#include <stdio.h>
int main() 
{
    int i,j,n;
    while (scanf("%d",&n) != EOF)
    { 
        //打印树叶部分
        for(i=0;i<3*n;i++)//打印3n层
        {           
            for(j=0;j<n-1-(i/3);j++)//第n层打印n-1-(i/3)个"   "
            {
                printf("   ");   
            }
            if(i%3==0)//共有3种情况,第i层需要打印(i/3)+1个
            {
                for(j=0;j<(i/3)+1;j++)
                {
                    printf("  *   ");   
                }
            }
            else if(i%3==1)
            {
                for(j=0;j<(i/3)+1;j++)
                {
                    printf(" * *  ");  
                }
            }
            else
            {
                for(j=0;j<(i/3)+1;j++)
                {
                    printf("* * * ");   
                }
            }
            printf("\n");     
        }
        //打印树干部分
        for(i=0;i<n;i++)
        {
           for(j=0;j<(6*n-1)/2;j++)
            {
                printf(" ");
            }
            printf("*\n");   
        }              
    }
    return 0;
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务