杨辉三角java

1
1 1
1 2 1
1 3 3 1
1 4 6 4 1

分析:
1. 键盘录入行数n
2. 把数据放入二维数组
a. 每个一维数组的长度不一样,所以可以采用第二种定义格式
int[][] arr = new int[n][];
b. for(int i = 0; i < n; i++) {arr[i] = new int[i+1]};
c. 填充数据
**每个数组的第一列和最后一列都是1
**arr[i][j] = arr[i-1][j-1] + arr[i-1][j];
3. 遍历输出二维数组

import java.util.Scanner;
class MultiArrayDemo5 {
	
	public static void main(String[] args) {
		// 1. 键盘录入行数n
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入行数:");
		int n = sc.nextInt();
		
		// 2. 把数据放入二维数组
		int[][] arr = new int[n][];
		for(int i = 0; i < n; i++) {
			arr[i] = new int[i+1];
		}
		// 每个数组的第一列和最后一列都是1
		for(int i = 0; i < n; i++) {
			arr[i][0] = 1;
			arr[i][i] = 1;
		}
		// arr[i][j] = arr[i-1][j-1] + arr[i-1][j]
		for(int i = 2; i < n; i++) {
			for(int j = 1; j < i; j++) {
				arr[i][j] = arr[i-1][j-1] + arr[i-1][j];
			}
		}
		
		//3. 遍历输出二维数组
		for(int i = 0; i < n; i++) {
			for(int j = 0; j <= i; j++) {
				System.out.print(arr[i][j] + "\t");
			}
			System.out.println();
		}
	}
	
}

猜你喜欢

转载自blog.csdn.net/weixin_42443419/article/details/88955920