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给它们编 ...
随机推荐
- 在java的继承中你是否有这样的疑惑?
一.问题 最近在写代码,有两个属性很相近的类,其中80%的属性(字段)都是一样的,剩下的才是各自不一样的,在设计的时候,采用了继承的方式,抽象除了一个父类,大概如下, 有FirstChild和Seco ...
- linux下更改文件字符格式为uft-8
liunx下发布的.net Core 程序,发现短信签名不错误不能发出.后来检查发现配配文件中的字符为乱码才知道是因为字符格式问题. 因为服务器批较多,还是使用命令来解决比较快.使用iconv来更改. ...
- 前端性能优化 —— 使用 BMP 图片代替 canvas.toDataURL
前端开发中有时需要将 canvas 的内容导出成图片文件,例如供 CSS 使用,通常会使用 canvas.toDataURL,兼容性好并且简单. 不过 canvas.toDataURL 显然是非常低效 ...
- ArcGIS热点分析
许多论文中一般会有热点分析图,ArcGIS中提供了热点分析的功能. 先看下描述:给定一组加权要素,使用 Getis-Ord Gi* 统计识别具有统计显著性的热点和冷点. 其实非常简单,今天博主就跟大家 ...
- 『德不孤』Pytest框架 — 15、Pytest参数化
目录 1.Pytest参数化说明 2.Pytest参数化方式 3.parametrize装饰器参数说明 4.Pytest参数化(单个参数) 5.Pytest参数化(多个参数) 6.ids参数说明 1. ...
- VS2010 查看代码编辑器中的变量
查看变量的使用情况 1.选中代码中的变量 2.右键 Find Usages
- AQS 详解之共享锁模式
概括 AQS框架数据结构是一个先进先出的双向队列,当多个线程进行竞争资源时,那些竞争失败的线程会加入到队列中.他向上层提供了很多接口,其中一个是acquireShared获取共享模式的接口.本文将会根 ...
- Java基础—String构造方法
Java基础--String构造方法 public String(): 创建一个空表字符串对象,不包含任何内容 public String(char[]chs): 根据字符数组的内容,来创建字符串对象 ...
- office online在线预览服务与https的tls证书兼容问题
问题现象:k8s环境配置证书后,无法调用office online 服务,附件无法预览 问题原因:ingress默认启用得是tls1.2,不兼容以下版本 k8s环境解决方法:增加ingress配置,兼 ...
- Java基础——方法的调用
Java基础--方法的调用 总结: 1. 在同一个类中-- 对于静态方法,其他的静态和非静态方法都可以直接通过"方法名"或者"类名.方法名"调用它. 对 ...