学习目标:

熟练掌握 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. 利用mysqldump 与 nginx定时器 定时备份mysql库

    1.安装mysqldump(如果备份远程mysql库,本地不用安装mysql 也可以单独使用) yum -y install holland-mysqldump.noarch 2.编写备份脚本 首先这 ...

  2. NOIP集训题目解析

    11.01 子段和 题目大意 给定一个长度为 \(n\) 的序列 \(a\) ,\(a_i=\{ -1,0,1 \}\) ,需要将 \(a\) 中的 \(0\) 变为 \(1\) 或 \(-1\) , ...

  3. Applied Social Network Analysis in Python 相关笔记

  4. 女朋友问我深浅copy到底是什么?

    深浅拷贝 列表存放值的时候,是先申请一块内存空间,存放索引和内存地址的对应关系,其实通俗的来说列表内不存真正的值,是一种间接存放的对应关系: 列表内存不可变类型的数据 就比如说,如果现在将L列表索引0 ...

  5. unicode和unicode编码

    unicode编码是什么? 这其实是两个问题,unicode 是什么什么?unicode是怎样编码的? What is Unicode? Unicode provides a unique numbe ...

  6. 4月19日 python学习总结 套接字模块的使用

    服务端: import socket phone=socket.socket(socket.AF_INET,socket.SOCK_STREAM) # 买电话 phone.bind(('127.0.0 ...

  7. java对xml文件的操作

    xml文件格式(示例): <?xml version="1.0" encoding="UTF-8"?> <root> <Funct ...

  8. 使用VS Code编译Marlin固件

    参考:https://marlinfw.org/docs/basics/install_platformio_vscode.html 前言 在阅读本文之前,您应该已经阅读了使用 PlatformIO ...

  9. sftp服务器搭建以及挂载新硬盘到home目录下

    前言 我身边一直有一个空闲不用的硬盘,一直空闲不用,闲暇的时候想到为什么不用起来呢,于是想起来搭建一个sftp服务器,当做云盘用了 搭建sftp服务器 SFTP称作"安全的FTP" ...

  10. zookeeper 负载均衡和 nginx 负载均衡区别 ?

    zk 的负载均衡是可以调控,nginx 只是能调权重,其他需要可控的都需要自己写插件:但是 nginx 的吞吐量比 zk 大很多,应该说按业务选择用哪种方式.