C语言怎么实现循环打印星号图形再镂空

这篇“C语言怎么实现循环打印星号图形再镂空”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C语言怎么实现循环打印星号图形再镂空”文章吧。

镂空的原理

判断什么时候打印星号,什么时候打印空格

C语言怎么实现循环打印星号图形再镂空

如果把这个图形镂空 成下面这个图形

C语言怎么实现循环打印星号图形再镂空

  int i,j;
    //外层控制行数和换行
    for(i=0;i<5;i++)
    {
        //内存循环控制列数和星数量
        for(j=0;j<=3-i;j++)
        {
            printf(" ");
        }
        for(j=0;j<=i*2;j++)
        {
            if(i==0 || i==4 || j ==0 || j == 2*i)    //第一行和最后一行不要镂空,然后就是中间的两边,分别是j=0和j取最大值的时候
                printf("*");
            else
                printf(" ");0
        }
 
        printf("\n");
    }
    return 0;

第二种:

C语言怎么实现循环打印星号图形再镂空

#include <stdio.h>
#include <stdlib.h>
 
int main()
{
    int i,j;
    for(i=0;i<9;i++)
    {
        for(j=0;j<9;j++)
        {
            if(i == 0 || i == 8 || j == 0 || j == 8)
            {
                printf("*");
            }
            else
            printf(" ");
        }
        printf("\n");
    }

第三种效果图:

C语言怎么实现循环打印星号图形再镂空

int main()
{
    //上半部分
    int i,j;
    for(i=0;i<3;i++)
    {
        for(j=0;j<2-i;j++)
        {
            printf(" ");
        }
        for(j=0;j<=2+2*i;j++)
        {
            if(i == 0 || j == 0 || j == 2+2*i)
                printf("*");
            else
                printf(" ");
        }
        printf("\n");
    }
 
    //中间部分
    for(i=0;i<3;i++)
    {
        for(j=0;j<7;j++)
        {
            if(j == 0 ||j == 6)
                printf("*");
            else
                printf(" ");
        }
        printf("\n");
    }
 
 
    //下半部分
    for(i=0;i<3;i++)
    {
        for(j=0;j<i;j++)
        {
            printf(" ");
        }
        for(j=0;j<=6-2*i;j++)
        {
            if(i == 2 || j == 0 || j ==6-2*i )
                printf("*");
            else
                printf(" ");
        }
        printf("\n");
    }
 
    return 0;
}

第四种:

C语言怎么实现循环打印星号图形再镂空

int main()
{
    int i,j;
 
    //上半部分
    for(i=0;i<3;i++)
    {
        for(j=0;j<2-i;j++)
        {
            printf(" ");
        }
        for(j=0;j<=2*i;j++)
        {
            printf("*");
        }
        printf("\n");
    }
 
    //下半部分
    for(i=0;i<7;i++)
    {
        for(j=0;j<5;j++)
        {
            if(j == 2)
                printf("*");
            else
                printf(" ");
        }
 
        printf("\n");
    }
 
    return 0;

以上就是关于“C语言怎么实现循环打印星号图形再镂空”这篇文章内容,相信大家都有了一定的了解,希望小编分享内容对大家有帮助,若想了解更多相关的知识内容,请关注编程之家行业资讯频道。

相关文章

蚂蚁庄园小课堂2024年6月29日答案是什么?进入支付宝一起饲养...
谷歌小恐龙怎么调出来,我们将连接电脑的网络拔掉或者禁用网...
蚂蚁庄园小课堂2024年6月22日答案是什么?每天蚂蚁庄园小课堂...
火绒为什么不建议大家用,火绒对于用户的要求比较高,查杀病...
百度网盘电脑版订阅的分享在哪?百度网盘电脑版订阅的分享在什...
notepad怎么替换换行符,打开notepad++软件,点击菜单栏的视...