Java实例:使用循环打印图形
程序员文章站
2022-04-01 18:17:24
...
打印矩形
******
******
******
******
******
实现代码:
public class Test{
public static void main(String[] args) {
//外层循环 每次输出一行*
for (int i = 1; i <= 5; i++) {
System.out.print("*");
//内层循环 每次输出一个*
for (int j = 1; j <= 5; j++) {
System.out.print("*");
}
System.out.println();
}
}
}
打印平行四边形
*****
*****
*****
*****
*****
实现代码:
public class Parallelogram {
public static void main(String[] args) {
//外层循环 每次打出一个*
for (int i = 1; i <=5; i++) {
//填充空格
for (int j = 1; j <= 5 - i; j++) {
System.out.print(" ");
}
//内层循环 每次打印一个*
for (int k = 1; k <= 5; k++) {
System.out.print("*");
}
System.out.println();
}
}
}
打印三角形
*
***
*****
*******
*********
我们先把这个图形拆分为三个直角三角形:
下面来我们来看一下完整的实现代码:
public class Demo {
public static void main(String[] args){
for(int i=1;i<=5;i++){ // 图形共5行,i表示行数
for(int j=5; i<=j; j--) // 打印左侧1号空白三角形部分
System.out.print(" ");
for(int j=1; j<=i; j++) // 打印2号三角形部分
System.out.print("*");
for(int j=1; j<i; j++) // 打印3号三角形部分
System.out.print("*");
System.out.println();
}
}
}
打印倒立的三角形
*******
*****
***
*
实现代码:
public class Test {
public static void main(String[] args) {
//打印倒立的三角形
for (int m = 1; m <= 4; m++) {
//打印空格
for (int n = 0; n <= m; n++) {
System.out.print(" ");
}
//打印*
for (int x = 1; x <= 7 -2 * (m - 1); x++) {
System.out.print("*");
}
System.out.println();
}
}
}
打印菱形
*
***
*****
*******
*********
*******
*****
***
*
实现代码
public class Diamond {
public static void main(String[] args) {
print(8); // 输出 8 行的菱形
}
public static void print(int size) {
if (size % 2 == 0) {
size++; // 计算菱形大小
}
for (int i = 0; i < size / 2 + 1; i++) {
for (int j = size / 2 + 1; j > i + 1; j--) {
System.out.print(" "); // 输出左上角位置的空白
}
for (int j = 0; j < 2 * i + 1; j++) {
System.out.print("*"); // 输出菱形上半部边缘
}
System.out.println(); // 换行
}
for (int i = size / 2 + 1; i < size; i++) {
for (int j = 0; j < i - size / 2; j++) {
System.out.print(" "); // 输出菱形左下角空白
}
for (int j = 0; j < 2 * size - 1 - 2 * i; j++) {
System.out.print("*"); // 输出菱形下半部边缘
}
System.out.println(); // 换行
}
}
}