题目思路

在本题中,可以看到是先减后增的规律,所以需要两个变量,一个先减到0,另一个再从0向上加
如下:

import java.util.*;

public class Main {
public static void main(String args[]) {
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    int m = sc.nextInt();

    for (int i = 0; i < n; i++) {
        for (int j= 0,k = i,e = 0; e < m; e++) {
            System.out.printf("%c",'A'+j+k);
            if (k>0) {
                k--;
            }else {
                j++;
            }
        }
        System.out.println();
    }
}
}

注意不能像下面这种只用一个变量:

import java.util.*;

public class Main {
public static void main(String args[]) {
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    int m = sc.nextInt();

    for (int i = 0; i < n; i++) {
        for (int k = i,e = 0; e < m; e++) {
            System.out.printf("%c",'A'+k);
            if (k>0) {
                k--;
            }else {
                k++;
            }
        }
        System.out.println();
    }
}
}

原因是如果只用一个变量,再自增以后又会大于0,导致自减。这样就无法实现预期结果

最后修改:2022 年 09 月 21 日
如果觉得我的文章对你有用,请随意赞赏