• 图形的搭建


    例一:

    输入描述:

    多组输入,一个整数(2~20),表示输出的行数,也表示组成“X”的反斜线和正斜线的长度。

    输出描述:

    针对每行输入,输出用“*”组成的X形图案。

    示例一:

    输入:

    5
    

    输出:

    *   *
     * * 
      *  
     * * 
    *   *

    示例二:

    输入:

    6
    

    输出:

    *    *
     *  * 
      **  
      **  
     *  * 
    *    *

    对于图形图案的构造,我们首先要做的就是观察、找规律,然后对图形进行搭建,构造。

    分析:

    对于这样的图形,首先我们可以发现图形相当于一个二维数组,然后对二维数组中的值进行存放。如图:

    62da22bf613d43cabf7fd3cf1adec3db.png

    我们可以发现,定义两个变量,当两个变量的值相等时,就打印“ * ”,或者当两个变量相加等于输入的变量的值减去一时,也打印“ * ”。

    废话不多说,上代码。

    #include<stdio.h>

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

    我们可以用编译器进行打印,输出的结果

    99082383ebfb4b70a50c38fa72b418ee.png

    例二:

    输入描述:

    多组输入,一个整数(3~20),表示输出的行数,也表示组成正方形边的“*”的数量。

    输出描述:

    针对每行输入,输出用“*”组成的“空心”正方形,每个“*”后面有一个空格。

    示例1:

    输出:

    * * * * 
    *     * 
    *     * 
    * * * * 
    

    示例2

    输入:

    5

    输出:

    * * * * * 
    *       * 
    *       * 
    *       * 
    * * * * * 

    首先,也是要进行分析。

    我们可以发现,当创建两个变量,并且他们的值等于0或者3时,打印“ * ”。

    cf7e577699a74ab7b67225cdeb8ff6ee.png

    上代码:

    #include

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

    编译可知
    75793611f0fc437c9ba5e5cb9785772d.png 

    如图所示

     

     

  • 相关阅读:
    LabVIEW中EPICS客户端/服务端的测试
    送你一份价值10W的非专业的面试技巧
    MongoDB CRUD操作:快照查询
    海量数据处理
    Flink之SQL查询操作
    7_JS关于数据代理_Object.defineProperty_Vue数据代理_双向绑定
    leetcode-每日一题-764-最大加号标志(中等,dp)
    操作系统权限提升(二十九)之数据库提权-SQL Server xp_cmdshell 提权
    springboot反射执行private方法@Autowired字段为空
    vue - 路由守卫
  • 原文地址:https://blog.csdn.net/Lswblue/article/details/140116127