1011-空心六边形

学习折腾
328 4

1011-空心六边形.jpg

思路

  1. 将该图形分成上下两部分分别输出;
  2. 找到空格和星每一行的规律。

知识点

  1. 找规律
  2. 嵌套循环的用法

代码实现

#include <iostream>
using namespace std;

int main() {
    int n, i, j;
    cin >> n;
    //输入上半部分
    //i控制行数
    for(i = 1; i < n; i++) {
        //j输出空格
        for(j = 1; j <= n - i; j++) {
            cout << " ";
        }
        //k输出星
        for(j = 1; j <= n + 2 * (i - 1); j++) {
            if(i == 1 or j == 1 or j == n + 2 * (i - 1)) {
                cout << "*";
            } else {
                cout << " ";
            }
        }
        cout << endl;
    }
    //输入x下半部分
    //i控制行数
    for(i = n; i > 0; i--) {
        //输出空格
        for(j = 1; j <= n - i; j++) {
            cout << " ";
        }
        //输出星
        for(j = 1; j <= n + 2 * (i - 1); j++) {
            if(i == 1 or j == 1 or j == n + 2 * (i - 1)) {
                cout << "*";
            } else {
                cout << " ";
            }
        }
        cout << endl;
    }
    return 0;
}
评论 ( 4 )
隐私评论
  1. 2024-06-21湖北省黄冈市回复
    不明觉历呀。
    1. 2024-06-21安徽省安庆市回复
      @wu先生
      都是一些简单的题。
  2. 2024-06-21贵州省回复
    都是妥妥的基础😂
    1. 2024-06-21安徽省回复
      @刘郎
      是哦,小学生刚入门,循环知识得多练习。