zoukankan      html  css  js  c++  java
  • 蓝桥杯 输出米字形 输出图案

    问题描述

    根据输入的正整数n ,输出一个米字形图案。米字形由一个(2n-1)*(2n-1)的矩阵组成,矩阵包含从大写A开始的n个字母
      例如:n=3时,包含A,B,C;n=4时,包含A,B,C,D。
      矩阵的正中间为n个字母中字典序最大的那个,从这个字母开始,沿着西北、正北、东北、正西、正东、西南、正南、东南八个方向各有一条由大写字母组成的直线。并且直线上的字母按字典序依次减小,直到大写字母A。
      矩阵的其它位置用英文句号.填充。
    样例输入一
    3
    样例输出一
    A.A.A
    .BBB.
    ABCBA
    .BBB.
    A.A.A
    样例输入二
    4
    样例输出二
    A..A..A
    .B.B.B.
    ..CCC..
    ABCDCBA
    ..CCC..
    .B.B.B.
    A..A..A

    8个for循环,每个for循环控制一个方向。可以先把8个for循环全部注释掉,然后把for循环1放出来,运行一下,再把for循环1和2放出来,运行一下,一直到8个全放出来,方便理解。

     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 char g[60][60];
     4 int main() {
     5     memset(g, '.', sizeof g);
     6     int n;
     7     cin >> n;
     8     for (int i = n; i >= 1; i--) { //1
     9         g[i - 1][i - 1] = 'A' + i - 1;
    10     }
    11     for (int i = 0, j = n - 1; i <= n - 1; i++) { //2
    12         g[i][j] = 'A' + i;
    13     }
    14     for (int i = 0, j = 2 * n - 2; i <= n - 1; i++, j--) { //3
    15         g[i][j] = 'A' + i;
    16     }
    17     for (int i = n - 1, j = 0; j <= n - 1; j++) { //4
    18         g[i][j] = 'A' + j;
    19     }
    20     for (int i = n - 1, j = 2 * n - 2; j >= n - 1; j--) { //5
    21         g[i][j] = 'A' - j + 2 * n - 2;
    22     }
    23     for (int i = 2 * n - 2, j = 0; i >= n - 1; i--, j++) { //6
    24         g[i][j] = 'A' - i + 2 * n - 2;
    25     }
    26     for (int i = 2 * n - 2, j = n - 1; i >= n - 1; i--) { //7
    27         g[i][j] = 'A' - i + 2 * n - 2;
    28     }
    29     for (int i = 2 * n - 1, j = 2 * n - 1; i >= n - 1; i--, j--) { //8
    30         g[i][j] = 'A' - i + 2 * n - 2;
    31     }
    32     for (int i = 0; i < 2 * n - 1; i++) { //输出 
    33         for (int j = 0; j < 2 * n - 1; j++) {
    34             cout << g[i][j];
    35         }
    36         cout << endl;
    37     }
    38     return 0;
    39 }
  • 相关阅读:
    Django中的文件操作
    【二】、如何进行网络通信
    【一】、什么是数据结构
    Java匹马行天下之一顿操作猛如虎,框架作用知多少?
    Java匹马行天下之致Java程序员的一封信
    在校大四学长赚人生第一个十万——越努力越幸运
    我们一起学Python之——认识Python"规则"
    Pycharm新手使用教程(详解)
    匹马行天下之思维决定高度篇——“大学再努力,培训机构做兄弟”姊妹篇
    cmd命令详解
  • 原文地址:https://www.cnblogs.com/fx1998/p/12680553.html
Copyright © 2011-2022 走看看