题解 | 圣诞树

#include <stdio.h>

int main() {
int n = 0;
int i, j, p, k, m, q;
scanf("%d", &n);
//先打印树叶,有n层树叶,每层三行
for (i = 0; i < n; i++)//循环打印n层树叶
{
    for (j = 0; j < 3; j++)//循环打印每层的每行
    {
        // 打印每行前面的空格
        for (k = 0; k < (n - i) * 3 - j - 1; k++)
            printf(" ");
        for (p = 0; p <= i; p++)//第n层有n个小三角
        {
            for (m = 0; m <= j; m++)
                printf("* ");
            //打印*之间的空格
            for (q = 0; q < 4 - 2 * j; q++)
                printf(" ");
        }
            printf("\n");
    }
}
//打印树干
for (i = 0; i < n; i++)
{
    for (j = 0; j < 3 * n - 1; j++)
        printf(" ");
    printf("*\n");
}
   

return 0;
}

全部评论

相关推荐

评论
2
收藏
分享
牛客网
牛客企业服务