Java 使用 for 循环打印菱形图案 - 代码示例与解析

本文将详细介绍使用 Java 中的 for 循环语句实现打印不同类型的菱形图案,包括空心菱形、实心菱形和根据用户输入的偶数数字生成菱形。并提供完整的代码示例和解释,帮助您理解实现原理。

1. 打印空心菱形

public class PrintDiamond {
    public static void main(String[] args) {
        int n = 5; // 菱形边长
        for (int i = 1; i <= n; i++) {
            for (int j = 1; j <= n - i; j++) {
                System.out.print(' ');
            }
            System.out.print('*');
            for (int j = 1; j < 2 * (i - 1); j++) {
                System.out.print(' ');
            }
            if (i != 1) {
                System.out.print('*');
            }
            System.out.println();
        }
        for (int i = n - 1; i >= 1; i--) {
            for (int j = 1; j <= n - i; j++) {
                System.out.print(' ');
            }
            System.out.print('*');
            for (int j = 1; j < 2 * (i - 1); j++) {
                System.out.print(' ');
            }
            if (i != 1) {
                System.out.print('*');
            }
            System.out.println();
        }
    }
}

2. 打印实心菱形

public class PrintDiamond {
    public static void main(String[] args) {
        int n = 5; // 菱形边长
        for (int i = 1; i <= n; i++) {
            for (int j = 1; j <= n - i; j++) {
                System.out.print(' ');
            }
            for (int j = 1; j <= 2 * i - 1; j++) {
                System.out.print('*');
            }
            System.out.println();
        }
        for (int i = n - 1; i >= 1; i--) {
            for (int j = 1; j <= n - i; j++) {
                System.out.print(' ');
            }
            for (int j = 1; j <= 2 * i - 1; j++) {
                System.out.print('*');
            }
            System.out.println();
        }
    }
}

3. 根据用户输入的偶数数字生成菱形

import java.util.Scanner;

public class PrintDiamond {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入偶数数字:");
        int n = scanner.nextInt(); // 菱形边长
        if (n % 2 == 0) {
            for (int i = 1; i <= n / 2; i++) {
                for (int j = 1; j <= n / 2 - i; j++) {
                    System.out.print(' ');
                }
                for (int j = 1; j <= 2 * i - 1; j++) {
                    System.out.print('*');
                }
                System.out.println();
            }
            for (int i = n / 2 - 1; i >= 1; i--) {
                for (int j = 1; j <= n / 2 - i; j++) {
                    System.out.print(' ');
                }
                for (int j = 1; j <= 2 * i - 1; j++) {
                    System.out.print('*');
                }
                System.out.println();
            }
        } else {
            System.out.println("输入数字必须为偶数!");
        }
    }
}

代码解释:

  1. 空心菱形:

    • 外层循环控制菱形上下两部分,分别从 1 到 nn-1 到 1;
    • 内层循环控制空格和星号的输出:
      • n-i 个空格:控制上半部分菱形左侧空格数量;
      • 1 个星号:控制菱形的顶点和边缘星号;
      • 2*(i-1) 个空格:控制上半部分菱形内部空格数量;
      • 1 个星号:控制上半部分菱形右侧边缘星号;
      • 下半部分菱形的输出与上半部分类似,只是循环方向相反。
  2. 实心菱形:

    • 与空心菱形类似,不同的是:
      • 使用 2*i-1 个星号输出,将菱形内部填充星号。
  3. 根据输入数字生成菱形:

    • 使用 Scanner 获取用户输入的数字;
    • 判断输入数字是否为偶数;
    • 循环控制和星号输出与实心菱形类似,只是根据 n/2 控制菱形的上下两部分。

总结:

本文介绍了使用 Java 的 for 循环语句打印不同类型的菱形图案,并提供了完整的代码示例和解释。希望能够帮助您理解代码的实现原理,并在实际开发中应用这些技巧。如果您想了解更多关于 Java 代码的知识,请参考相关文档和教程。

Java 使用 for 循环打印菱形图案 - 代码示例与解析

原文地址: https://www.cveoy.top/t/topic/j9tj 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录