首頁>技術>

解題思路:對於這道題,小林拆分為3部分進行講解

第一部分,對有特點的數(每行開頭和結束的數都是1)進行賦值:

for(i=0;i<10;i++)//for迴圈   {    array[i][i]=1;//給二維陣列的每一行的最後一個賦值為1     array[i][0]=1;//第二維陣列的每一行的開頭賦值為1   }

第二部分,給中間的數進行賦值:

for(i=2;i<10;i++)//外層迴圈限制行   {    for(j=1;j<=i-1;j++)//內層迴圈限制列     {      array[i][j]=array[i-1][j]+array[i-1][j-1];//給中間的數賦值    }   }

第三部分,就是把上面賦值後的二維陣列,遍歷輸出即可;

for(i=0;i<10;i++)//外層迴圈限制行   {    for(j=0;j<=i;j++)//內層迴圈限制列     {      printf("%6d",array[i][j]);//輸出二維陣列,寬度為6     }  printf("\n");//換行   }

原始碼演示:

#include<stdio.h>//標頭檔案 int main()//主函式入口 {  int i,j;//定義整型變數   int array[10][10];//定義二維陣列   for(i=0;i<10;i++)//for迴圈   {    array[i][i]=1;//給二維陣列的每一行的最後一個賦值為1     array[i][0]=1;//第二維陣列的每一行的開頭賦值為1   }    for(i=2;i<10;i++)//外層迴圈限制行   {    for(j=1;j<=i-1;j++)//內層迴圈限制列     {      array[i][j]=array[i-1][j]+array[i-1][j-1];//給中間的數賦值    }   }    for(i=0;i<10;i++)//外層迴圈限制行   {    for(j=0;j<=i;j++)//內層迴圈限制列     {      printf("%6d",array[i][j]);//輸出二維陣列,寬度為6     }  printf("\n");//換行   }  return 0;//函式返回值為0 }

編譯執行結果如下:

20
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • C語言 | 遞迴求n的階乘