1. 程式人生 > >數字三角形 c 語言實現

數字三角形 c 語言實現

#include<stdio.h>  
  //  用全域性變數來存陣列
int Tri[5][5]={{7},  
               {3,8},  
               {8,1,0},  
               {2,7,4,4},  
               {4,5,2,6,5}};  
//陣列的輸出函式
void prin(int tri[][5],int n){
	int i=n;
        int j=0;
	for(i=0; i<n; i++){
		for(j=0;j<=i;j++){
		printf("%5d",tri[i][j]);
	}
 	printf("\n");
	}
	
} 
//從倒數第二行開始,往上開始構造.
int dayn(int Tri[5][5], int m)  
{  
    int i,j,t;  
    for (i=m-2; i>=0; i--)//3->0  
    {  
        for (j=0; j<i+1; j++) // 0->i 0-->3
        {  
            printf("%d %d %d  --> ", Tri[i][j],Tri[i+1][j], Tri[i+1][j+1] );  
            int t=((Tri[i+1][j]>Tri[i+1][j+1])? Tri[i+1][j] :Tri[i+1][j+1]);  
            printf("%dth choose %d  --> ", i, t);  
            Tri[i][j] += t ; 
            printf("%d %d %d \n", Tri[i][j],Tri[i+1][j], Tri[i+1][j+1] );  
              
        }
	
        printf("\n");  
    }  
    ///  
    int nn=Tri[0][0];  
      
    return nn;  
}

  
int main()  
{   prin(Tri,5);  
    printf("%d\n",dayn(Tri,5));  
    return 0;
}