import java.util.Scanner;
class Para{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[][] arr = new int[n][n];


for(int i=0;i<n;i++){
for(int j=0;j<=i;j++){

if(j==0){
arr[i][j]=1;
System.out.println();
}

else if(j==arr[i].length-1){
arr[i][j]=1;
}

else if(i>=1){
arr[i][j]=arr[i-1][j] + arr[i-1][j-1];
}

System.out.print(arr[i][j]);
}
}
}
}最后打印出来的是
1
10
100
1100
12100
133100
1464100
1510105100
161520156101

解决方案 »

  1.   

    我也是初学者,给你几个建议。第一个是打印的时候加个逗号可以看清;第二个是你的杨辉三角要保证第一行1条记录,第二行2条记录,所以你的i,j要符合这种条件,或者是从1开始,或者是从0开始但是j就也得减掉2了。整体逻辑是没问题的
      

  2.   

    public static void main(String[] args) {
    try {
    triangle();
    } catch (Exception e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    }
    public static void triangle() throws Exception{
    Scanner s=new Scanner(System.in);
    int rownums=0;
    try {
    rownums=s.nextInt();
    } catch (Exception e) {
    // TODO: handle exception
    System.out.println("请输入正确的数字!");
    }
    if(rownums<=0){
    throw new Exception("请输入正确的正整数!");
    }
    int[][] a=new int[rownums][rownums];
         for (int i = 0; i < rownums; i++) {
         for (int k = 1; k <a.length-i; k++) {
    System.out.print(" ");
    }
    for (int j = 0; j <=i; j++) {
    if(j==0){
    a[i][j]=1;
    }else if(i==1){
    a[i][j]=1;
    }else {
    a[i][j]=a[i-1][j-1]+a[i-1][j];  
    }
    System.out.print(a[i][j]+" ");
    }
    System.out.println();
    }
    }别输入太大的行数,因为每一行的数字间我只间隔了一个空格,行数太大的话三角会变形,当然也是可以自己调整每一行数字间间隔的空格的
      

  3.   

    package ang.demo;import java.util.Scanner;import javax.xml.soap.Text;public class SanJiao {
    public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    System.out.println("please input a single number");
    int tx = input.nextInt();
    int [][]row = new int[tx][tx];

    for (int i = 0; i <tx; i++) {
    for (int j = 0; j <=i; j++) {
    if (i==1||i==j||j==0) {
    row[i][j]=1;
    }else {

    // row[i][j]= row[i][j-1]+row[i-1][j-1];
    row[i][j]= row[i-1][j]+row[i-1][j-1];
    }
    System.out.print(row[i][j]);
    }
    System.out.println("\t");
    }
    }
    }