10275 字母金字塔

题目描述

按照样例打印字母金字塔

输入格式

输入一个字母c,保证是大写

输出格式

输出一个字母金字塔。

样例

输入样例2

C
输出样例2

  A
 ABA
ABCBA
数据范围与提示

提示:

char c = 'A';
c ++;  // 则此时变量c中存储的是字母B,字符是可以做加减的,可以得到ASCII表中前后字母
cout << 'C' - 'A' << endl; // 此时输出为2, 表示ASCII表中,C在A字符的后两个位置上
分类标签

[循环]

C++题解代码

#include <bits/stdc++.h>
using namespace std;

char c;
int A;
int n;


// The main procedure
int main() {
  cin>>c;
  A = (int)'A';
  n = (((int)c-A)+1);
  for (int i = 1; i <= n; i++) {
    for (int j = 1; j <= (n-i); j++) {
      cout<<" ";
    }
    for (int k = 0; k < i; k++) {
      cout<<(char)(k+A);
    }
    for (int k = (i-1); k > 0; k--) {
      cout<<(char)((k+A)-1);
    }
    if (i < n) {
      cout<<'\n';
    }
  }
  return 0;
}

Blockly题解代码图片