打印菱形(奇数n阶实心)

简介: 打印菱形(奇数n阶实心)

🌵🌵🌵前言

题目

输入一个奇数 n,输出一个由 * 构成的 n 阶实心菱形。

代码

#include <iostream>
using namespace std;

int main(){
    int n;cin>>n;
    for(int i=1;i<=n;i=i+2){    //打印1、3、5……n数行 (即菱形含最大行的上半部分)
        
        for(int j=1;j<=n/2-i/2;j++){    //打印空格,n/2是空格最多的情况,n-2-i/2为需要打印的空格数量 
            cout<<" ";
        }
        for(int j=1;j<=i;j++){        //第i行有i个"*" 
            cout<<"*";
        }
        cout<<endl;
    }
    
    for(int i=n-2;i>=1;i=i-2){  //打印n-2、n-5……1行 ,下半部分等于上半部分的倒置 
        
        for(int j=1;j<=n/2-i/2;j++){
            cout<<" ";
        }
        for(int j=1;j<=i;j++){
            cout<<"*";
        }
        cout<<endl;
    }
    return 0;
}
目录
相关文章
|
算法
【算法专题突破】双指针 - 有效三角形的个数(5)
【算法专题突破】双指针 - 有效三角形的个数(5)
31 0
|
1月前
【九度 OJ 06】2.7输出梯形
【九度 OJ 06】2.7输出梯形
9 0
|
6月前
8.求出100~230之间所有素数之和,先在屏幕上输出,再求和
8.求出100~230之间所有素数之和,先在屏幕上输出,再求和
33 0
|
6月前
|
Java
【剑指offer】-顺时针打印矩阵-19/67
【剑指offer】-顺时针打印矩阵-19/67
|
6月前
|
算法 C++
(C++)有效三角形的个数--双指针法
(C++)有效三角形的个数--双指针法
62 0
|
算法 Python
【每周一坑】​计算100以内质数之和 +【解答】输出三角形
不过如果你有兴趣的话,可以进一步考虑一下你所用方法的算法复杂度是多少,看看谁的方法更简单。
剑指offer_数组---顺时针打印矩阵
剑指offer_数组---顺时针打印矩阵
48 0
剑指offer 28. 顺时针打印矩阵
剑指offer 28. 顺时针打印矩阵
53 0
n阶幻方类的实现(C++)
有这样的一个魔方,1放在第一行的中间位置,随后输入1~n²
274 0
n阶幻方类的实现(C++)
打印菱形(奇数n阶实心)
打印菱形(奇数n阶实心)
276 0