象这样编就可以了:
public class Test{  public static void  main(String args[]){    System.out.println("dfkldshf;ahfkldsf'kad") ;
    int[][] a = new int[7][7];
    for(int i =0;i<7 ;i++){
      for(int j=0;j<i;j++){
        if(j==0||j==i){
          a[i][j]=1;        }else{
          a[i][j]=a[i-1][j-1]+a[i-1][j] ;
        }
      }
    }
    for(int k =0;k<7;k++){
      for(int m=0;m<k;m++){
        System.out.print(a[k][m]);
      }
      System.out.println();
    }
  }
}怎么样?解决了吗?

解决方案 »

  1.   

    public class Test{  public static void  main(String args[]){    System.out.println("dfkldshf;ahfkldsf'kad") ;
        int[][] a = new int[7][7];
        for(int i =0;i<7 ;i++){
          for(int j=0;j<i;j++){
            if(j==0||j==i){
              a[i][j]=1;        }else{
              a[i][j]=a[i-1][j-1]+a[i-1][j] ;
            }
          }
        }
        for(int k =0;k<7;k++){
          for(int m=0;m<k;m++){
            System.out.print(a[k][m]);
          }
          System.out.println();
        }
      }
    }
      

  2.   

    class TestApp {
    public static long[] getNextLevelNumbers(long[] numbers)
    {
    if (numbers == null)
    return new long[] { 1 };
    long[] tmp_numbers = new long[numbers.length+2];
    for (int i = 0; i < numbers.length; i++){
    tmp_numbers[i+1] = numbers[i];
    }
    long[] result = new long[numbers.length+1];
    for (int i = 1; i < tmp_numbers.length; i++){
    result[i-1] = tmp_numbers[i-1]+tmp_numbers[i];
    }

    return result;
    }
    public static void main(String args[])
    {
    int level = 50;
    int m = 0;
    long[] numbers = null;
    while (m <= level)
    {
    numbers = getNextLevelNumbers(numbers);
    for (int i = 0; i < numbers.length; i++)
    {
    System.out.print(numbers[i] + " ");
    }
    System.out.println("");
    m++;
    }
    }
    }
      

  3.   

    //杨辉三角程序的C++实现
    //作者:meteor135
    //时间:2003.5.18
    #include <iostream.h>
    #include <iomanip.h>
    int prompt()
    {
        int n;
        cout<<"Input a positive number,"<<endl
            <<"nonpositive will quit!"<<endl
            <<"=:";
        cin>>n;
        cin.delbuf();
        return n;
    }void main()
    {
        int i,j,n;    while((n=prompt())>0)
        {
            int **a=new int*[n];        for(i=0;i<n;i++)
            {
                a[i] = new int[i+1];
                a[i][i]=a[i][0]=1;//这里稍做修改
                for(j=1;j<i;j++)
                {
                    a[i][j]=a[i-1][j]+a[i-1][j-1];
                }
            }
            for (i=0;i<n;i++)
            {
                for(j=0;j<=i;j++)
                    cout<<setw(80/n)<<a[i][j];
                cout<<endl;
                delete[] a[i];
            }
            delete []a;
        }
    }
      

  4.   

    这是最标准的递归示例(不是最高效的)public class Test { public static void main(String[] args) {
    for(int i=1;i<21;i++)
    {
    int[] array = getArray(i);
    int len = array.length;
    for(int j=0;j<len;j++)
    {
    System.out.print(array[j] + " ");
    }
    System.out.println();
    }
    }
    public static int[] getArray(int i)
    {
    if(i > 2)
    {
    int[] returnArray = new int[i];
    int[] UpperArray = getArray(i-1);
    returnArray[0] = UpperArray[0];
    returnArray[returnArray.length - 1] = UpperArray[UpperArray.length - 1];
    int len = returnArray.length - 1;
    for(int j=1;j<len;j++)
    {
    returnArray[j] = UpperArray[j - 1] + UpperArray[j];
    }
    return returnArray;
    }
    else if(i == 2)
    return new int[]{1,1};
    else if(i == 1)
    return new int[]{1};
    else
    throw new IllegalArgumentException("参数出错(必须>=1)");
    }
    }
      

  5.   

    回头看看relive(六道轮回,无想转生) ( ) 信誉:105 的程序,发现==2的那个判断可以拿掉
    public class Test { public static void main(String[] args) {
    for(int i=1;i<21;i++)
    {
    int[] array = getArray(i);
    int len = array.length;
    for(int j=0;j<len;j++)
    System.out.print(array[j] + " ");
    System.out.println();
    }
    }
    public static int[] getArray(int i)
    {
    if(i > 1)
    {
    int[] returnArray = new int[i];
    int[] UpperArray = getArray(i-1);
    returnArray[0] = UpperArray[0];
    returnArray[returnArray.length - 1] = UpperArray[UpperArray.length - 1];
    int len = returnArray.length - 1;
    for(int j=1;j<len;j++)
    returnArray[j] = UpperArray[j - 1] + UpperArray[j];
    return returnArray;
    }
    else if(i == 1)
    return new int[]{1};
    else
    throw new IllegalArgumentException("参数出错(必须>=1)");
    }
    }