for 循环打印直角三角形、正三角形、棱形
学习目标:
熟练掌握 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 循环打印直角三角形、正三角形、棱形的更多相关文章
- 使用Java的嵌套循环打印出平行四边形、等腰三角形、棱形、矩形的星星图案(Java工程师面试必备)
第一遍是看了视频,听老师讲解嵌套循环的使用,然后到星星图形这一步,当时都觉得听明白了,但是自己去做,就是写不出来 第二遍看了赵老师的教程,看了好熟悉的感觉,还是自己写不出来 第三遍找网上关于图形的嵌套 ...
- 面试题-一个for循环输出一个棱形
用一个for循环输出以下棱形 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ...
- java基础08 双重循环打印图形
public class Double01 { /** * 若有3个班级各4名学员参赛, * 如何计算每个班级参赛学员的平均分? */ public static void main(String[] ...
- for 循环打印图形
public class For { public static void main(String[] args) { //"使用双层for循环打印图形时,外层管行,内层管列",那 ...
- C语言回滚(二)--循环打印
//1.用循环打印 /* FFEFEDFEDCFEDCBFEDCBA */ #include <stdio.h> #include<stdlib.h> int main(){ ...
- 编程题:利用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 ...
- Java多线程循环打印ABC的5种实现方法
https://blog.csdn.net/weixin_39723337/article/details/80352783 题目:3个线程循环打印ABC,其中A打印3次,B打印2次,C打印1次,循环 ...
- 写一个方法,用一个for循环打印九九乘法表
public class MultiplicationTable { /** * @description 写一个方法,用一个for循环打印九九乘法表 * @author wangkun * ...
- 如何用一个for循环打印出一个二维数组
思路分析: 二维数组在内存中默认是按照行存储的,比如一个二维数组{{1,2,3,},{4,5,6}},它在内存中存储的顺序就是1.2.3.4.5.6,也就是说,对于这6个数组元素,按照从0到5给它们编 ...
随机推荐
- 5. 堪比JMeter的.Net压测工具 - Crank 实战篇 - 接口以及场景压测
目录 堪比JMeter的.Net压测工具 - Crank 入门篇 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识yml 堪比JMeter的.Net压测工具 - Crank 进阶篇 ...
- C++高并发场景下读多写少的优化方案
概述 一谈到高并发的优化方案,往往能想到模块水平拆分.数据库读写分离.分库分表,加缓存.加mq等,这些都是从系统架构上解决.单模块作为系统的组成单元,其性能好坏也能很大的影响整体性能,本文从单模块下读 ...
- 3、myql的逻辑架构和sql的执行流程
msyql逻辑架构 逻辑架构的解析 逻辑架构图如下(序号代表的是:服务器处理客户端请求的流程) 1.1connectors connectors是指使用不同语言的客户端与mysql server服务器 ...
- python的matplotlib.pyplot绘制甘特图
博主本来就想简单地找一下代码,画一幅甘特图,结果百度之后发现甘特图的代码基本都不是用matplotlib库,但是像柱状图等统计图通常都是用这个库进行绘制的,所以博主就花了一些时间,自己敲了一份代码,简 ...
- Java基础——方法重写
什么是方法重写? 子类中出现和父类中完全一样的方法声明 什么时候可以进行方法重写? 在子类需要父类的功能的同时,功能主体子类有自己的特有内容时,可以重写,一面沿袭了父类的功能一面又定义了子类特有的内容 ...
- 『现学现忘』Docker基础 — 30、Docker中数据卷相关命令
目录 1.Volume命令说明 2.Volume命令的使用 (1)创建数据卷 (2)查看本地数据卷列表 (3)打印myVolume数据卷的详细信息 (4)删除数据卷 (5)删除所有未使用的数据卷 3. ...
- Ubuntu 16.04 更改系统语言为简体中文
镜像下载.域名解析.时间同步请点击阿里巴巴开源镜像站 一.安装时报错 原因:以访客的身份进入的会报错,改为管理员进入即可. ps:有时候往往一点小细节也会造成大问题,但是我们要善于排错. 注:可以看到 ...
- idea创建web项目以及配置Tomcat
废话不多说,直接上干活: 1.在project中现创建好module,也就是java web项目 2.把路径名写清楚就行了 3.创建在WEB-INF上右击创建classes和lib以存储class编译 ...
- Django orm Q查询补充
Q的简单用法 from django.db.models import Q q = Q() q.children.append(("username", "lyj&quo ...
- hutool包里的ObjectUtil.isNull和ObjectUtil.isEmpty的区别
大家都用过hutool包把,包路径为:cn.hutool.core.util,最近再使用的过程中一直没高明白ObjectUtil.isEmpty和ObjectUtil.isNull两者到底有那些区别, ...