import javax.swing.JOptionPane;public class San {    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
           String bb;
           int aa;
           
           bb = JOptionPane.showInputDialog("lines:");
           aa = Integer.parseInt(bb);
           
           int cc[][]=new int[aa][aa * 2 - 1];
           
           for(int i = 0;i < aa;i++){
                  for(int j = 0;j < aa * 2 -1;j++){
                      cc[i][j] = -1;
                  }
              }
           
           for(int i = 0;i < aa;i++){
               cc[(aa * 2 - 1) / 2 - i][i] = 1;
               cc[(aa * 2 - 1) / 2 - i][aa * 2 - 1 - i - 1] = 1;
           }
           
           for(int i = 2;i < aa;i++){
                  for(int j = 0;j < aa * 2 -1;j++){
                      if(j > aa - i - 1 && j < aa * 2 - 1 - 1 
                              && cc[i - 1][j -1] != -1 && cc[i -1][j + 1] != -1)
                      cc[i][j] = cc[i - 1][j -1] + cc[i -1][j + 1];
                  }
           }
           
          for(int i = 0;i < aa;i++){
              for(int j = 0;j < aa * 2 - 1;j++){
                  if(cc[i][j] == -1){
                      System.out.printf("%3s"," ");  
                  }
                  else{
                      System.out.printf("%3d",cc[i][j]);                   }
              }
              System.out.println();
          }
    }}
-------------------------------------------------------------------
上边程序是用Java编写的杨辉三角,我不是很明白,请高手为我在每句程序后边写上注释!便于我理解!!谢谢了!!!在线等....
           bb = JOptionPane.showInputDialog("lines:");
           aa = Integer.parseInt(bb);尤其是这两句话....   

解决方案 »

  1.   

    bb = JOptionPane.showInputDialog("lines:");
      aa = Integer.parseInt(bb);
    这个是让你输入需要打印几行的杨辉三角
      

  2.   


    import javax.swing.JOptionPane;public class San { /**
     * @param args
     */
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    String bb;
    int aa; bb = JOptionPane.showInputDialog("lines:");
    aa = Integer.parseInt(bb); int cc[][] = new int[aa][aa * 2 - 1];  //创建一个2维数组保存杨辉三角的值 for (int i = 0; i < aa; i++) {   //初始化
    for (int j = 0; j < aa * 2 - 1; j++) {
    cc[i][j] = -1;
    }
    } for (int i = 0; i < aa; i++) {  //将三角外围全赋值为 1 
    cc[(aa * 2 - 1) / 2 - i][i] = 1;
    cc[(aa * 2 - 1) / 2 - i][aa * 2 - 1 - i - 1] = 1;
    } for (int i = 2; i < aa; i++) { //将三角中相应的位置填充
    for (int j = 0; j < aa * 2 - 1; j++) {
    if (j > aa - i - 1 && j < aa * 2 - 1 - 1
    && cc[i - 1][j - 1] != -1 && cc[i - 1][j + 1] != -1)
    cc[i][j] = cc[i - 1][j - 1] + cc[i - 1][j + 1];
    }
    } for (int i = 0; i < aa; i++) { //打印
    for (int j = 0; j < aa * 2 - 1; j++) {
    if (cc[i][j] == -1) {
    System.out.printf("%3s", " ");
    } else {
    System.out.printf("%3d", cc[i][j]); }
    }
    System.out.println();
    } }}这个代码有点冗余
    不过分工倒是蛮明确的
      

  3.   

    bb = JOptionPane.showInputDialog("lines:"); //显示一个输入框提示你输入几行
      aa = Integer.parseInt(bb); //把输入的数值转换为数值类型