测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A18231. 打印旗帜

填空题 较易

题目描述

打印旗帜

题目描述

打印一面三角型的旗子。旗面向左,其中三角形每条边有n个星号,旗子的旗杆也有n个星号。例如,当n=3时,输出:

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

输入格式

第一行:正整数 n

输出格式

输出方案见描述

输入样例 1

3

输出样例 1

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

输入样例 2

7

输入样例 2

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

说明提示 (1 ≤ n ≤ 20)

参考答案

#include <iostream> using namespace std; int main() { int n; cin >> n; // 打印上半部分向左三角旗面 for (int i = 0; i < n; ++i) { // 前置空格 for (int j = 0; j < n - 1 - i; ++j) cout << " "; // 打印星号 2*i+1 个 for (int k = 0; k < 2 * i + 1; ++k) cout << "*"; cout << endl; } // 打印下方n行旗杆,每行前面n-1个空格+一个* for (int i = 0; i < n; ++i) { for (int j = 0; j < n - 1; ++j) cout << " "; cout << "*" << endl; } return 0; }
上一题 下一题