【题目要求】
在屏幕上打印出一个n阶杨辉三角。
第一种形式:
【代码】
public class Ta {
public static void main(String[] args){
Scanner str = new Scanner(System.in);
int n = str.nextInt();
int i,j,k;
int[] buf= new int[n+1];
int[] tmp= new int[n+1];
for(i=0;i<=n;i++){
if(i==0){
System.out.print(1);
}else if(i==1){
System.out.print("1"+"\t"+"1");
buf[0]=1;
buf[1]=1;
tmp[0]=1;
tmp[1]=1;
}else{
for(j=1;j<=i+1;j++){
if(j==1||j==i+1){
System.out.print(1+"\t");
tmp[j-1]=1;
}else{
System.out.print(buf[j-1]+buf[j-2]+"\t");
tmp[j-1]=buf[j-2]+buf[j-1];
}
}
}
System.out.println();
for(k=0;k<n+1;k++){
buf[k]=tmp[k];
}
}
}
}
第二种形式:
public class ArrayList {
public static void main(String[] args) {
Scanner s=new Scanner(System.in);
int y=s.nextInt();
int k[][]=new int[y+1][y*2+1];
k[0][y]=1;
for(int i=1;i<y+1;i++){
for(int j=1;j<y*2;j++){
k[i][j]=k[i-1][j-1]+k[i-1][j+1];
}
}
k[y][0]=1;
k[y][2*y]=1;
for(int i=0;i<y+1;i++){
for(int j=0;j<y*2+1;j++){
System.out.print(k[i][j]==0?" ":
k[i][j]<10?" "+k[i][j]:k[i][j]<100?" "+k[i][j]:" "+k[i][j]);
}
System.out.println();
}
}
}