楊輝三角形的不同表示
阿新 • • 發佈:2020-07-21
#include<stdio.h> #define Line 10 /* 第一種 就是 用二維陣列來表示 每行第一個元素和最後一個都是1 從第三行開始,中間元素都是上一行同一列以及其左側元素之和 */ int main(void){ int a[Line][Line]; a[0][0] = 1; for (int i = 1; i < Line; i++){a[i][0] = 1; a[i][i] = 1;} for (int i = 2; i < Line; i++){ for (int j = 1; j < i; j++){ a[i][j]= a[i - 1][j] + a[i - 1][j - 1]; } } printf("楊輝三角形如下:\n"); for (int i = 0; i < Line; i++){ for (int t = 0; t < Line * 2 - i * 2; t++) printf(" "); for (int j = 0; j <= i; j++){ printf("%4d", a[i][j]); } printf("\n"); } return0; }
//這裡的x從0開始,而y從1開始 int f(int x, int y){//求楊輝三角中第x行第y列的值 int t; if (y == 1 || y == x + 1) return 1;//x行的第1或最後一列,都為1 t = f(x - 1, y - 1) + f(x - 1, y); return t; }