(刚学了java一个月,自己做的练习) 一维数组的杨辉三角:2011-03-09 16:39:49 import java.util.Scanner; public class YangHuiTriangle { public static void main(String[]args){ Scanner input=new Scanner(System.in); System.out.print("请输入杨辉三角的层数:"); int floor=input.nextInt(); Calculate daff=new Calculate(floor); daff.total(); } } class Calculate{ private int conut; private int[] daff; //带参数的构造方法 public Calculate(int n){ this.conut=n; } public int[] circle(int floor){ int[] arr=new int[floor]; arr[0]=1; arr[floor-1]=1; if(floor>2){ for(int i=1;i<floor-1;i++) arr[i]=daff[i-1]+daff[i]; } daff=new int[floor]; System.arraycopy(arr, 0, daff, 0, arr.length);//使用System类的数字复制方法 return daff; } public void total(){ for(int i=1;i<=conut;i++){ for(int nbsp=conut;nbsp>i;nbsp--) System.out.print("/t"); for(int j:circle(i)){ System.out.print(j+"/t/t"); } System.out.println(); } } } 二维数组实现杨辉三角: /* * 采用二维数字的方法实现杨辉三角的输出 */ import java.util.Scanner; public class YangHui { public static void main(String[] args){ Scanner input=new Scanner(System.in); System.out.print("请输入杨辉三角的层数:"); int floor=input.nextInt(); int[][] arrarr =new int[floor][]; for(int i=0;i<floor;i++){ arrarr[i]=new int[i+1]; for(int j=0;j<=i;j++) arrarr[i][j]=1; } if(floor>2){ for(int i=1;i<floor;i++){ for(int j=1;j<i;j++){ arrarr[i][j]=arrarr[i-1][j-1]+arrarr[i-1][j]; } } } for(int[] i:arrarr){ for(int nbsp=floor;nbsp>i.length;nbsp--) System.out.print("/t"); for(int j:i) System.out.print(j+"/t/t"); System.out.println(); } } }