1 #include <stdio.h> 2 #include <stdlib.h> 3 #define N 13 4 5 6 int main(void) 7 { 8 9 // 定义二维数组 10 int a[N][N] = { 0 }; 11 int i = 0, j = 0; 12 13 for (i = 0; i < N; i++) 14 { 15 for (j = 0; j < N; j++) 16 { 17 if (j == 0 || i == j) // 第一列和对角线为 1 18 { 19 a[i][j] = 1; 20 } 21 else 22 { 23 a[i][j] = a[i - 1][j - 1] + a[i - 1][j]; 24 } 25 } 26 } 27 // 数组形 28 for (i = 0; i < N; i++) 29 { 30 for (j = 0; j <= i; j++) 31 { 32 printf("%4d", a[i][j]); 33 } 34 printf(" "); 35 } 36 37 // 金字塔形状 38 for (i = 0; i < N; i++) 39 { 40 printf("%*d", 30 - i * 2, a[i][0]); // * 代表宽度 41 42 for (j = 1; j <= i; j++) 43 { 44 printf("%4d", a[i][j]); 45 } 46 printf(" "); 47 } 48 49 system("pause"); 50 return 0; 51 }