一、编程思想:打印空心三角形和菱形时需要由简到繁,先死后活的思想。
1、先打印最简单的矩形,然后是半三角形,然后是全三角形,再是空心三角形,及后面的菱形
2、这些过程实际上是由简入繁的思想步骤,在不断地加判断条件,不断地改循环条件…
3、从最简单最”死“的一步开始做起,从特殊到一般,总结规律,找到突破口(比如从全三角形到空心三角形是找到特点除最后一行外每一行只有两个,而且有特定的位置,此时往判断条件里加个筛选即可*)
二、代码
1、空心金字塔

public static void main(String[] args) {Scanner myScanner = new Scanner(System.in);System.out.println("请输入要打印的金字塔行数");int count = myScanner.nextInt();for(int i = 1;i <= count;i++){//i表示层数for(int k = 0 ;k < count - i;k++){//表示空格数System.out.print('\0');}for(int j =1 ;j <= (2*i - 1); j++ ){//表示*数if(j==1 || (j==2*i -1)  ){System.out.print("*");}else{System.out.print('\0');}}System.out.print('\n');}}
}

2、打印菱形

public static void main(String[] args) {/*1、打印空心的菱形2、分成两部分,第一部分为空心三角形3、第二部分为空心倒三角形*/Scanner myScanner = new Scanner(System.in);System.out.println("请输入要打印的菱形上半部分的层数");int count = myScanner.nextInt();//先打印上半部分/*1、根据输入确定多少层2、然后根据打印的实体三角形去空(加条件判断)2.1判断每行的第一个为*和最后一个为**/for(int i = 1;i <= count;i++){//i表示层for(int j =1 ;j<= count - i;j++ ){//j表示空格System.out.print('\0');//根据*前的空格规律,先把空格打印出来}                          //再打印*,此处并不是嵌套,而是顺序执行for(int k = 1;k <= 2*i-1;k++){//k打印**if( k == 1 || k == 2*i-1 )System.out.print("*");//观察*在每行出现的规律else                  //可知只在第一个位置和最后一个位置出现System.out.print('\0');//其余位置均为空格}System.out.println("");//每行完成后换行}//打印下半部分for(int i = 1;i < count;i++){//i表示层for(int k = 1;k < 2*count-1;k++){//k打印**if( k == i+1 || k == 2*count-i-1 )//第i层的第i+1个和倒数i+1个为*System.out.print("*");//elseSystem.out.print('\0');}System.out.println("");}
}

打印空心三角形及菱形相关推荐

  1. 【C语言练习——打印空心三角形】

    活动地址:毕业季·进击的技术er 夏日炎炎,热浪中我们迎来毕业季,这是告别,也是迈向新起点的开始.这是一个毕业的月份,每年看到很多毕业生都离校上班,在校生准备考试和暑假实习,都非常感慨,不管怎样,作为 ...

  2. 用C语言打印空心三角形

    #include<stdio.h> #include<stdlib.h>int main() {for(;;){int n;printf("输入边长:"); ...

  3. C语言打印空心三角形代码

    int main() {int i,j,k;printf("请输入行号:");scanf("%d",&k);printf("--------- ...

  4. c++直角空心三角形_c++打印实心菱形,空心三角形,十字星,空心正方形,实心平行四边形...

    #include#include //功能选择界面 voidmenu();//使用声明 voidStatement();//打印实心菱形 intSolid_diamond();//打印空心三角形 in ...

  5. Java使用多重for循环打印实心三角形,倒立三角形以及空心菱形

    Java使用多重for循环打印实心三角形,倒立三角形以及空心菱形 使用双重for循环打印倒立三角形和菱形算是在循环嵌套里面,自我感觉比较难的第一个程序 这是本次要打印的目标: 打印上图实心三角形思路如 ...

  6. python打印空心长方形_Python程序打印空心半菱形星形图案

    给出一个整数N,任务是打印空心半菱形图案.示例:输出:## ## ## ## ## ##输入:7## ## ## ## ## ## ## #### ## ## ## #下半部分:对于下半部分,使用迭代 ...

  7. java空心三角形_java经典算法_019打印三角形(空心,实心)

    打印三角形(空心,实心) package com.arithmetic; /** * 打印三角形(空心,实心) * * @author Administrator * */ public class ...

  8. java输出到空心三角形_java经典算法_019打印三角形(空心,实心) | 学步园

    打印三角形(空心,实心) package com.arithmetic; /** * 打印三角形(空心,实心) * * @author Administrator * */ public class ...

  9. python 如何用*号打印出等腰三角形和菱形

    在学习python的循环语句时,老师经常会要求我们用循环语句打印出三角形或菱形,今天俺就来演示演示如何用*打印出图形. 1.首先来看看如何打印出等腰三角形(如图): layer = int(input ...

最新文章

  1. 网红“AI大佬”被爆论文剽窃,Jeff Dean都看不下去了
  2. HTTP/3 来了 !HTTP/2 还没怎么用起来呢,先一起扫个盲吧!
  3. 交叉分解(Cross decomposition)、典型关联分析(Canonical Correlation Analysis,CCA)、偏最小二乘回归PLS
  4. redhat linux ls ls,Linux(3)RedHat7 基本命令二-ls命令詳解
  5. ViewPager+Fragment实现TabHost,Fragment动态添加、删除,Tab选项卡跟随滑动
  6. SQL基础选段(2)
  7. sklearn处理文本和分类属性的方式
  8. .NET中的正则表达式 (三)RegexCompilationInfo 类
  9. 云从科技宣布B+轮融资,多家国有基金入股,累计获资35亿元
  10. github创建远程仓库
  11. 深度学习视频数据集(动作识别):UCF-101
  12. win10如何解决非系统盘中出现的msdia80.dll文件
  13. 调用JS函数的内部函数
  14. Word毕业论文排版 公式居中 编号右对齐 及交叉引用(使用MathType公式编辑器实现)
  15. 使用积分图像进行自适应二值化[Derek Bradley, Gerhard Roth, 2007]
  16. 最新Android框架排行榜。
  17. iOS 框架模式(简述 MVC,MVP,MVVM 和 VIPER CDD)
  18. 如何设置word表格中文字与表格线之间的距离(缩短文字和上面表格线之间距离),让表格变得紧凑
  19. R 语言赋值运算符:`-` , `=`, `-`
  20. Tesla P40在Windows10专业版下走核显输出

热门文章

  1. R数据分析:扫盲贴,什么是多重插补
  2. 华为HCIE证大数据证书社会认可度怎么样?
  3. 找到不到libcrypto-3.dll
  4. raid卡缓存对硬盘性能_我们怎么解决机械硬盘既慢又容易坏的问题?
  5. C语言 埃氏筛法求素数
  6. Python 求解e^(-x)/x函数在区间[0.01, ∞]上的定积分
  7. CAD编辑器,把DWG转换成DXF格式的方法
  8. 如何下载百度云文档需要用劵下载的内容
  9. 高频电子线路 高频功率放大器
  10. canvas 绘制圆弧