JAVA习题–数组4
4.使用二维数组打印一个 n 行杨辉三角.
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
…
【提示】
1. 第一行有 1 个元素, 第 n 行有 n 个元素
2. 每一行的第一个元素和最后一个元素都是 1
3. 从第三行开始, 对于非第一个元素和最后一个元素的元素.
yanghui[i][j] = yanghui[i-1][j-1] + yanghui[i-1][j];
import java.util.Scanner;
public class YangHui {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//二维数组中含有n个一维数组
int n;
System.out.println("请输入杨辉三角的行数:");
Scanner input=new Scanner(System.in);
n=input.nextInt();
int[][] arr=new int [n][];
int i;
int j;
//对10个一维数组进行初始化
for(i=0;i<arr.length;i++){
arr[i]=new int[i+1];
}
//对二维数组赋值
for(i=0;i<arr.length;i++){
for(j=0;j<arr.length;j++){
arr[i][0]=arr[i][i]=1;
if(i>1&&j<i&&j>0){
arr[i][j]=arr[i-1][j-1]+arr[i-1][j];
}
}
}
//打印杨辉三角
for(i=0;i<arr.length;i++){
for(j=0;j<arr[i].length;j++){
System.out.print(arr[i][j]+" ");
}
System.out.println();
}
}
}