C语言常见图形打印合集(牛客网习题)

 以下均为多组输入

一、线段图案

#include 

int main()
{
    int c;
    while(scanf("%d", &c) != EOF)
    {
        int i;
        for(i = 1; i <= c; i++)
            printf("*");
        printf("\n");
        getchar();
    }
    return 0;
}

结果如下:

C语言常见图形打印合集(牛客网习题)_第1张图片

 二、正方形图案

#include 

int main()
{
    int h;
    while(scanf("%d", &h) != EOF)
    {
        int i, j;
        for(i = 0; i < h; i++)
        {
            for(j = 0; j < h; j++)
            {
                printf("* ");
            }
            printf("\n");
        }
    }
    return 0;
}

结果如下:

C语言常见图形打印合集(牛客网习题)_第2张图片

三、直角三角形图案

#include 

int main()
{
    int l;
    while(scanf("%d", &l) != EOF)
    {
        int i, j;
        for(i = 1; i <= l; i++)
        {
            for(j = 1; j <= i; j++)
            {
                printf("* ");
            }
            printf("\n");
        }
    }
    return 0;
}

 结果如下:

C语言常见图形打印合集(牛客网习题)_第3张图片

 四、 翻转直角三角形图案

#include 

int main()
{
    int l;
    while(scanf("%d", &l) != EOF)
    {
        int i, j;
        for(i = 0; i < l; i++)
        {
            for(j = l-i; j >= 1; j--)
            {
                printf("* ");
            }
            printf("\n");
        }
    }
    return 0;
}

 结果如下:

C语言常见图形打印合集(牛客网习题)_第4张图片

五、带空格直角三角形图案 

#include 

int main()
{
    int a;
    while(scanf("%d", &a) != EOF)
    {
        int i, j;
        for(i = 0; i < a; i++)
        {
            for(j = 0; j < a-1-i; j++)
            {
                printf("  ");
            }
            for(j = 0; j <= i; j++)
                printf("* ");
            printf("\n");
        }
    }
    return 0;
}

结果如下:

C语言常见图形打印合集(牛客网习题)_第5张图片

 六、金字塔图案

#include 

int main()
{
    int a;
    while(scanf("%d", &a) != EOF)
    {
        int i, j;
        for(i = 0; i < a; i++)
        {
            for(j = 0; j < a-1-i; j++)
            {
                printf(" ");
            }
            for(j = 0; j <= i; j++)
            {
                printf("* ");
            }
            printf("\n");
        }
    }
    return 0;
}

结果如下:

C语言常见图形打印合集(牛客网习题)_第6张图片

 七、翻转金字塔图案

#include 

int main()
{
    int a;
    while(scanf("%d", &a) != EOF)
    {
        int i, j;
        for(i = a; i > 0; i--)
        {
            for(j = 0; j < a-i; j++)
            {
                printf(" ");
            }
            for(j = 0; j < i; j++)
            {
                printf("* ");
            }
            printf("\n");
        }
    }
    return 0;
}

结果如下: 

C语言常见图形打印合集(牛客网习题)_第7张图片

八、菱形图案

#include 

int main()
{
    int a;
    while(scanf("%d", &a) != EOF)
    {
        int i, j;
        for(i = 0; i < a; i++)
        {
            for(j = 0; j < a-i; j++)
            {
                printf(" ");
            }
            for(j = 0; j <= i; j++)
            {
                printf("* ");
            }
            printf("\n");
        }
        for(i = a; i >= 0; i--)
        {
            for(j = 0; j < a-i; j++)
            {
                printf(" ");
            }
            for(j = 0; j <= i; j++)
            {
                printf("* ");
            }
            printf("\n");
        }
    }
    return 0;
}

 结果如下:

C语言常见图形打印合集(牛客网习题)_第8张图片

 九、 K形图案

#include 

int main()
{
    int a;
    while(scanf("%d", &a) != EOF)
    {
        int i, j;
        for(i = a; i > 0; i--)
        {
            for(j = 0; j <= i; j++)
            {
                printf("* ");
            }
            printf("\n");
        }
        for(i = 0; i <= a; i++)
        {
            for(j = 0; j <= i; j++)
            {
                printf("* ");
            }
            printf("\n");
        }
    }
    return 0;
}

结果如下:

C语言常见图形打印合集(牛客网习题)_第9张图片

十、箭形图案

#include 

int main()
{
    int a;
    while(scanf("%d", &a) != EOF)
    {
        int i, j;
        for(i = 0; i < a; i++)
        {
            for(j = 0; j < 2*(a-i); j++)
            {
                printf(" ");
            }
            for(j = 0; j <= i; j++)
            {
                printf("*");
            }
            printf("\n");
        }
        for(i = a; i >= 0; i--)
        {
            for(j = 0; j < 2*(a-i); j++)
            {
                printf(" ");
            }
            for(j = 0; j <= i; j++)
            {
                printf("*");
            }
            printf("\n");
        }
    }
    return 0;
}

 结果如下:

C语言常见图形打印合集(牛客网习题)_第10张图片

 十一、反斜线形图案

#include 

int main()
{
    int a;
    while(scanf("%d", &a) != EOF)
    {
        int i, j;
        for(i = a; i > 0; i--)
        {
            for(j = 0; j < a-i; j++)
            {
                printf(" ");
            }
            printf("*");
            printf("\n");
        }

    }
    return 0;
}

结果如下:

C语言常见图形打印合集(牛客网习题)_第11张图片

 十二、正斜线形图案

#include 

int main()
{
    int a;
    while(scanf("%d", &a) != EOF)
    {
        int i, j;
        for(i = 0; i < a; i++)
        {
            for(j = 0; j < a-i-1; j++)
            {
                printf(" ");
            }
            printf("*");
            printf("\n");
        }
    }
    return 0;
}

结果如下:

C语言常见图形打印合集(牛客网习题)_第12张图片

十三、X形图案

#include 

int main()
{
    int a;
    while(scanf("%d", &a) != EOF)
    {
        int i, j;
        for(i = 0; i < a; i++)
        {
            for(j = 0; j < a; j++)
            {
                if((j == i) || (i+j) == (a-1))
                   printf("*");
                else
                    printf(" ");
            }
            printf("\n");
        }
    }
    return 0;
}

 结果如下:

C语言常见图形打印合集(牛客网习题)_第13张图片

 十四、空心正方形图案

#include 

int main()
{
    int a, i, j;
    while(scanf("%d", &a) != EOF)
    {
        for(i = 1; i <= a; i++)
        {
            for(j = 1; j <= a; j++)
            {
                if(i == 1 || j == 1 || j == a || i == a)
                    printf("* ");
                else
                    printf("  ");
            }
            printf("\n");
        }
    }
    return 0;
}

结果如下:

C语言常见图形打印合集(牛客网习题)_第14张图片

十五、空心三角形图案

#include 

int main()
{
    int a;
    while(scanf("%d", &a) != EOF)
    {
      int i, j; 
        for (i = 1; i <= a; i++)
        {
            for (j = 1; j <= a; j++)
            {
                if (j == 1 || i == a || i == j)
                {
                    printf("* ");
                }
                else
                {
                    printf("  ");
                }
            }
            printf("\n");
        }
    }
    return 0;
}

C语言常见图形打印合集(牛客网习题)_第15张图片 

你可能感兴趣的:(习题,c语言,c++)