• 【蓝桥杯】打印十字图(图形规律)


    题目描述

    小明为某机构设计了一个十字型的徽标(并非红十字会啊),如下所示:

    ..$$$$$$$$$$$$$..
    ..$...........$..
    $$$.$$$$$$$$$.$$$
    $...$.......$...$
    $.$$$.$$$$$.$$$.$
    $.$...$...$...$.$
    $.$.$$$.$.$$$.$.$
    $.$.$...$...$.$.$
    $.$.$.$$$$$.$.$.$
    $.$.$...$...$.$.$
    $.$.$$$.$.$$$.$.$
    $.$...$...$...$.$
    $.$$$.$$$$$.$$$.$
    $...$.......$...$
    $$$.$$$$$$$$$.$$$
    ..$...........$..
    ..$$$$$$$$$$$$$..
    

    对方同时也需要在电脑dos窗口中以字符的形式输出该标志,并能任意控制层数。

    输入1 ,则输出

    ..$$$$$..
    ..$...$..
    $$$.$.$$$
    $...$...$
    $.$$$$$.$
    $...$...$
    $$$.$.$$$
    ..$...$..
    ..$$$$$..
    

    输入

    一个正整数 n (n< 30)  表示要求打印图形的层数。 

    输出

    对应包围层数的该标志。 

    样例输入

    3

    样例输出

    ..$$$$$$$$$$$$$.. 
    ..$...........$.. 
    $$$.$$$$$$$$$.$$$ 
    $...$.......$...$ 
    $.$$$.$$$$$.$$$.$
    $.$...$...$...$.$
    $.$.$$$.$.$$$.$.$
    $.$.$...$...$.$.$
    $.$.$.$$$$$.$.$.$
    $.$.$...$...$.$.$
    $.$.$$$.$.$$$.$.$
    $.$...$...$...$.$
    $.$$$.$$$$$.$$$.$
    $...$.......$...$
    $$$.$$$$$$$$$.$$$
    ..$...........$..
    ..$$$$$$$$$$$$$.. 

    提示

    请仔细观察样例,尤其要注意句点的数量和输出位置。 

    思路

    从最外层开始打印‘$’, 先打印横线和竖线上的‘$’,再打印四个角的直角‘$’

     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 char s[220][220];
     4 int main()
     5 {
     6     int n;
     7     scanf("%d",&n);
     8     int o=n*4+5;
     9     int l=2,a=0;
    10     memset(s,'.',sizeof(s));
    11     n++;
    12     while(n--)
    13     {
    14         for(int i=l; i<o-l; i++)
    15             s[a][i]=s[i][a]=s[i][o-a-1]=s[o-a-1][i]='$';
    16         s[a+1][l]=s[l][a+1]=s[l][l]='$';//左上
    17         s[a+1][o-1-l]=s[l][o-a-2]=s[l][o-1-l]='$';//右上
    18         s[o-a-2][l]=s[o-1-l][a+1]=s[o-1-l][l]='$';//左下
    19         s[o-a-2][o-1-l]=s[o-1-l][o-a-2]=s[o-1-l][o-1-l]='$';//右下
    20         a+=2;
    21         l+=2;
    22     }
    23     for(int i=0; i<o; i++)
    24     {
    25         for(int j=0; j<o; j++)
    26             putchar(s[i][j]);
    27         putchar('
    ');
    28     }
    29     return 0;
    30 }
  • 相关阅读:
    服务注册与发现
    回溯算法
    SpringCloud之远程调用OpenFeign和Ribbon
    SpringCloud之Ribbon负载均衡策略
    Java(Springboot)获取客户端IP地址工具类
    Linux磁盘分区、挂载、查看文件大小
    Dubbo高级进阶Spi应用
    Dubbo监控平台DubboAdmin安装监控
    Dubbo高级进阶Spi应用以及与JDK的Spi区别
    python--装饰器的常见使用
  • 原文地址:https://www.cnblogs.com/lesroad/p/8588226.html
Copyright © 2020-2023  润新知