图片说明
从上面可以看出,蛇形矩阵其实就是多个等差数列,在列方向是+1;+2;+3*****;
在行的方向是+2;+3,行的第一个差值是i+1;例如第一行是+2开始;第二行是+3开始,其实也是等差数列,行的每行循环次数比上行都减1
public class Main{

public static void main(String args[]){//主方法,主要就是接收数据
    Scanner sc=new Scanner(System.in);
    while(sc.hasNext()){
        int num=sc.nextInt();
        printtriangle(num);
    }
}

public static void printtriangle(int num){ //输出方法输出蛇形矩阵
    int y=1;//列的方向第一个肯定是1
    int yCount=1;//列由上往下是等差数列,第一行和第二行差1
    for(int i=1;i<=num;i++){//行的循环次数
        int x=y;//第i行的第一个数就是列的第i个数
        int xCount=i+1; //可以看到第i行第一个加数刚好是i+1
        for(int j=1;j<=num-i+1;j++){ //列的循环次数,每次少一列
            System.out.print(x+" ");//循环输出x
            x+=xCount++;    //等差数列每次+1
        }
        System.out.println("");//换行
        y+=yCount++; //等差数列每次加1
    }
}

}