【问题描述】

输入金字塔的层数n(n为正整数),输出由字符*组成的金字塔图形。最底层的字符数为2n-1,最上层字符数为1。字符图形水平居中对齐(使用空格填充)。

【样例输入】

5

【样例输出】

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

【分析】

输出金字塔图形的关键就是确定每一行空格数、星号数与金字塔层数、所在行数的关系。

每一行应该输出多少星号很容易确定,第i行输出2i-1个星号就可以了。

那么在每一行的星号之前,输出需要多少空格呢?这就与金字塔的层数n有关了。

我个人认为这样计算空格数最为简单:

首先计算第一行的空格数x。第一行有一个星号,这个星号左边有x个空格,右边也有x个空格的位置。

也就是说,第一行有2x+1个字符。

最后一行的空格数为0,只有2n-1个星号,n为金字塔的层数。

也就是说,最后一行有2n-1个字符。

怎样保证金字塔的对称性?对了,就是每一行的字符数都相同,所以:2x+1=2n-1,x是多少不用再解释了吧!

我们不需要求每一行的空格数,每一行都比上一行少输出一个空格就可以了。

#include <iostream>
#include <iomanip>
using namespace std;
int main(){int n;cin>>n;int i,count,m,konggeshu;konggeshu=(2*n-2)/2;for(i=1;i<=n;i++){count=2*i-1;for(m=1;m<=konggeshu;m++)cout<<" ";for(m=1;m<=count;m++)cout<<"*";konggeshu--;cout<<endl;}return 0;
}

C++程序设计:输出n层金字塔图形相关推荐

  1. 【c语言】(函数)金字塔图形问题:根据n的个数,输出由字母组成的一个金字塔图形

    题目: 编写一个函数,其函数原型声明为"void draw(int n);".函数功能是根据n的个数(0<n<14),输出由字母组成的一个金字塔图形,编写主程序,测试该 ...

  2. 输入正整数n,输出n层数字金字塔。

    7-135 数字金字塔 (10 分) 输入正整数n,输出n层数字金字塔. 输入格式: 正整数n,1<=n<=9. 输出格式: n层的金字塔,其中第1层的"1"在第1行的 ...

  3. php打印倒立金字塔,编写程序打印*字符形成的等腰三角形倒立金字塔图形 ******* ***** *** *...

    导航:网站首页 > 编写程序打印*字符形成的等腰三角形倒立金字塔图形 ******* ***** *** * 编写程序打印*字符形成的等腰三角形倒立金字塔图形 ******* ***** *** ...

  4. python的for语句打印金字塔图形_python实现输入任意一个大写字母生成金字塔的示例...

    本文将要为您介绍的是python实现输入任意一个大写字母生成金字塔的示例,具体完成步骤: 输入任意一个大写字母,生成金字塔图形 def GoldTa(input): L = [chr(i) for i ...

  5. php循环实现金字塔,PHP中使用循环实现的金字塔图形

    这篇文章主要介绍了PHP中使用循环实现的金字塔图形,本文是一篇PHP的课堂笔记,完成老师的作业总结而来,需要的朋友可以参考下 今天学习了最基础的PHP条件和循环语句,最后老师提了几个问题,其中一个实现 ...

  6. 金字塔字母图形C语言,习题:输入任意大写字母,生成金字塔图形

    package com.test.code; import java.io.*; public class pyramid { public static void main(String[] arg ...

  7. php 画金字塔,PHP金字塔图形 PHP中使用循环实现的金字塔图形

    想了解PHP中使用循环实现的金字塔图形的相关内容吗,在本文为您仔细讲解PHP金字塔图形的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:PHP,金字塔图形,下面大家一起来学习吧. 今天学习了 ...

  8. 用java输出图形_java基础-输出一个简单的图形。

    最近写了几行代码输出下面的图形.不多说了,代码如下. * *** ***** public class javaDemoOne { /** * @brief 主函数 * @author wks * @ ...

  9. C语言:按要求输入如下格式的杨辉三角 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 最多输出10层

    题目描述 按要求输入如下格式的杨辉三角,最多输出10层. 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 输入 输入只包含一个正整数n,表示将要输出的杨辉三角的 ...

  10. c语言字母排直角三角形,C语言程序设计,输出形状为直角三角形的九九乘法表

    C语言程序设计,输出形状为直角三角形的九九乘法表 答案:7  信息版本:手机版 解决时间 2019-10-07 02:42 已解决 2019-10-06 07:05 C语言程序设计,输出形状为直角三角 ...

最新文章

  1. void main()是错的!
  2. 阿里同款目标管理和绩效管理系统,让每个岗位都为业务赋能
  3. Berkeley DB的数据存储结构——哈希表(Hash Table)、B树(BTree)、队列(Queue)、记录号(Recno)...
  4. 零基础学习JavaSE(一)
  5. Spring boot国际化切换
  6. 本教程针对HBuilder5.0.0,制作日期2014-12-31(从HBuilder工具上获得)
  7. (译)利用ASP.NET加密和解密Web.config中连接字符串
  8. C++ Primer 学习笔记_72_面向对象编程 --句柄类与继承[续]
  9. 【Java线程】深入理解Volatile关键字和使用
  10. NB-IoT将成为未来5G物联网主流技术
  11. 坑了多少人?这就是乐视网负债总规模!
  12. 网络通信 netstat
  13. c++连接云服务器_如何简单搭建Minecraft服务器
  14. 周剑:国产商业智能 BI 这 20 年(1997~2017)
  15. matlab画图线形
  16. 恢复希捷硬盘丢失数据的方法
  17. android 厨房的使用方法,安卓ROM厨房定制工具使用教程
  18. 【IT运维】国内优秀的IT运维企业有哪些?
  19. 51CTO“硅谷技划”日记之一:飞向旧金山的技术集结号
  20. Excel表格复制粘贴后保持格式不变

热门文章

  1. base64加密解密
  2. 自动刷乐乎邀请码脚本
  3. 913_emacs中使用restart-emacs
  4. 拆解大数据总线平台DBus的系统架构
  5. 统计学习之第二天(可汗学院公开课:统计学)
  6. 小学计算机考核,小学信息技术学科考核评价方案.docx
  7. Google Admob 广告快速集成(并集成Firebase统计)
  8. 服务器被攻击显示,怎么查看服务器被攻击
  9. 怎样才能赢得用户------由360与腾讯之争引发的思考
  10. 网管实战:为网络系统构建ISA防火墙