Java 打印倒三角形代码示例及错误分析

以下代码展示了如何使用 Java 代码打印倒三角形,并对代码中的错误进行了分析和修正。

import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println('请键盘输入一个行数:');
        int n = sc.nextInt();

        System.out.println(rows(n));
    }
    /*打印倒三角形,并且行数(line)是可控制的。比如我想打印6行的倒三角形,则如下图:

     ******
     *****
     ****
     ***
     **
     *
     */
    public static int rows(int n) {
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < n-i; j++) {
                System.out.print('*');
            }
            System.out.println();
        }
        return n;
    }
}

代码错误分析:

  1. 在主函数中,调用了一个未定义的变量rows,应该改为调用rows(n)
  2. rows函数中,内层循环应该使用System.out.print('*')而不是System.out.println('*'),以便打印在同一行。
  3. rows函数中,内层循环结束后,应该再打印一个换行符System.out.println(),以便打印下一行。
  4. rows函数中,应该将循环变量i的初始值设为0,以便打印正确的行数。

修正后的代码:

import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println('请键盘输入一个行数:');
        int n = sc.nextInt();

        System.out.println(rows(n));
    }
    /*打印倒三角形,并且行数(line)是可控制的。比如我想打印6行的倒三角形,则如下图:

     ******
     *****
     ****
     ***
     **
     *
     */
    public static int rows(int n) {
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < n-i; j++) {
                System.out.print('*');
            }
            System.out.println();
        }
        return n;
    }
}

通过修正这些错误,代码可以成功打印出用户指定的行数的倒三角形。


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

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