学习目标:

熟练掌握 for 循环的使用

例题:

1、需求:打印直角三角形
代码如下:

// 左直角
for(int i = 0; i < 5; i++) {
for(int j = 0; j <= i; j++) {
System.out.print("*");
}
System.out.println(""); }
//右直角
for(int i = 0; i < 5; i++) {
for(int k = 0; k < 4 - i; k++) {
System.out.print(" ");
}
for(int j = 0; j <= i; j++) {
System.out.print("*");
}
System.out.println(""); }

运行效果:

*
**
***
****
*****
*
**
***
****
***** Process finished with exit code 0

2、需求:打印正三角形
代码如下:

// 正角三角形
for(int i = 0; i < 5; i++) {
// 打印 * 号前的空格,总共5行,第一行前面3个空格,第二行前面2个空格,随着行变化而变化
for(int k = 4; k > i; k--) {
System.out.print(" ");
}
// 打印 *
for(int j = 0; j <= i; j++) {
System.out.print("* ");
}
System.out.println("");
}

运行效果:

    *
* *
* * *
* * * *
* * * * * Process finished with exit code 0

3、需求:打印实心棱形
代码如下:

// 打印实心棱形
for(int i = 0; i < 4; i++) {
for(int k = 2; k >= i; k--) {
System.out.print(" ");
}
for(int j = 0; j <= i; j++) {
System.out.print(" *");
}
System.out.println();
}
for(int i = 3; i > 0; i--) {
for(int k = 0; k <= 3 - i; k++) {
System.out.print(" ");
}
for(int j = 0; j < i; j++) {
System.out.print(" *");
}
System.out.println();
}

运行效果:

    *
* *
* * *
* * * *
* * *
* *
* Process finished with exit code 0

3、需求:打印空心棱形
代码如下:

// 打印空心棱形
for(int i = 0; i < 4; i++) {
// 打印开头的空字符
for(int k = 3; k > i; k--) {
System.out.print(" ");
}
// 判断是否是第一行,如果是就打印2颗*,如果不是则打印1颗*
if(i > 0) {
System.out.print("*");
// 打印中间空格
for(int j = 0; j < i * 2 - 1; j++) {
System.out.print(" ");
}
System.out.print("*");
} else {
System.out.print("*");
}
System.out.println();
}
// 打印下面的倒三角
for(int i = 1; i < 4; i++) {
// 打印开头的空字符
for(int k = 0; k < i; k++) {
System.out.print(" ");
}
// 判断是否是第一行,如果是就打印2颗*,如果不是则打印1颗*
if(i < 3) {
System.out.print("*");
// 打印中间空格
for(int j = 1; j <= 5 - i * 2; j++) {
System.out.print(" ");
}
System.out.print("*");
} else {
System.out.print("*");
}
System.out.println();
}

运行效果:

   *
* *
* *
* *
* *
* *
* Process finished with exit code 0

总结:

以上就是for循环的应用了

for 循环打印直角三角形、正三角形、棱形的更多相关文章

  1. 使用Java的嵌套循环打印出平行四边形、等腰三角形、棱形、矩形的星星图案(Java工程师面试必备)

    第一遍是看了视频,听老师讲解嵌套循环的使用,然后到星星图形这一步,当时都觉得听明白了,但是自己去做,就是写不出来 第二遍看了赵老师的教程,看了好熟悉的感觉,还是自己写不出来 第三遍找网上关于图形的嵌套 ...

  2. 面试题-一个for循环输出一个棱形

    用一个for循环输出以下棱形 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ...

  3. java基础08 双重循环打印图形

    public class Double01 { /** * 若有3个班级各4名学员参赛, * 如何计算每个班级参赛学员的平均分? */ public static void main(String[] ...

  4. for 循环打印图形

    public class For { public static void main(String[] args) { //"使用双层for循环打印图形时,外层管行,内层管列",那 ...

  5. C语言回滚(二)--循环打印

    //1.用循环打印 /* FFEFEDFEDCFEDCBFEDCBA */ #include <stdio.h> #include<stdlib.h> int main(){ ...

  6. 编程题:利用for循环打印 9*9 表?

    利用for循环打印 9*9  表? 1*1=1 1*2=2  2*2=4 1*3=3  2*3=6  3*3=9 1*4=4  2*4=8  3*4=12  4*4=16 1*5=5  2*5=10  ...

  7. Java多线程循环打印ABC的5种实现方法

    https://blog.csdn.net/weixin_39723337/article/details/80352783 题目:3个线程循环打印ABC,其中A打印3次,B打印2次,C打印1次,循环 ...

  8. 写一个方法,用一个for循环打印九九乘法表

    public class MultiplicationTable { /**  * @description 写一个方法,用一个for循环打印九九乘法表   * @author  wangkun  * ...

  9. 如何用一个for循环打印出一个二维数组

    思路分析: 二维数组在内存中默认是按照行存储的,比如一个二维数组{{1,2,3,},{4,5,6}},它在内存中存储的顺序就是1.2.3.4.5.6,也就是说,对于这6个数组元素,按照从0到5给它们编 ...

随机推荐

  1. 在java的继承中你是否有这样的疑惑?

    一.问题 最近在写代码,有两个属性很相近的类,其中80%的属性(字段)都是一样的,剩下的才是各自不一样的,在设计的时候,采用了继承的方式,抽象除了一个父类,大概如下, 有FirstChild和Seco ...

  2. linux下更改文件字符格式为uft-8

    liunx下发布的.net Core 程序,发现短信签名不错误不能发出.后来检查发现配配文件中的字符为乱码才知道是因为字符格式问题. 因为服务器批较多,还是使用命令来解决比较快.使用iconv来更改. ...

  3. 前端性能优化 —— 使用 BMP 图片代替 canvas.toDataURL

    前端开发中有时需要将 canvas 的内容导出成图片文件,例如供 CSS 使用,通常会使用 canvas.toDataURL,兼容性好并且简单. 不过 canvas.toDataURL 显然是非常低效 ...

  4. ArcGIS热点分析

    许多论文中一般会有热点分析图,ArcGIS中提供了热点分析的功能. 先看下描述:给定一组加权要素,使用 Getis-Ord Gi* 统计识别具有统计显著性的热点和冷点. 其实非常简单,今天博主就跟大家 ...

  5. 『德不孤』Pytest框架 — 15、Pytest参数化

    目录 1.Pytest参数化说明 2.Pytest参数化方式 3.parametrize装饰器参数说明 4.Pytest参数化(单个参数) 5.Pytest参数化(多个参数) 6.ids参数说明 1. ...

  6. VS2010 查看代码编辑器中的变量

    查看变量的使用情况 1.选中代码中的变量 2.右键 Find Usages

  7. AQS 详解之共享锁模式

    概括 AQS框架数据结构是一个先进先出的双向队列,当多个线程进行竞争资源时,那些竞争失败的线程会加入到队列中.他向上层提供了很多接口,其中一个是acquireShared获取共享模式的接口.本文将会根 ...

  8. Java基础—String构造方法

    Java基础--String构造方法 public String(): 创建一个空表字符串对象,不包含任何内容 public String(char[]chs): 根据字符数组的内容,来创建字符串对象 ...

  9. office online在线预览服务与https的tls证书兼容问题

    问题现象:k8s环境配置证书后,无法调用office online 服务,附件无法预览 问题原因:ingress默认启用得是tls1.2,不兼容以下版本 k8s环境解决方法:增加ingress配置,兼 ...

  10. Java基础——方法的调用

    Java基础--方法的调用     总结: 1. 在同一个类中-- 对于静态方法,其他的静态和非静态方法都可以直接通过"方法名"或者"类名.方法名"调用它. 对 ...