#include<stdio.h>
#include<ctype.h>
#include<string.h>
#include<math.h>
#include<stdlib.h>
int main()
{
int n, i, j, k, arr[10][10] = {0}; //先將二維陣列全部初始化爲0,爲後面計算不是1的元素做準備。
scanf("%d", &n);
for ( i = 0; i < n; i++) //再將所有屬於楊輝三角的元素初始化爲1
for ( j = 0; j <= i; j++){ //很容易得出列數是 <= 行數的
arr[i][j] = 1;
}
for ( i = 2; i < n; i++) //從第三行開始一直到最後一行
for ( j = 1; j <= i - 1; j++) //從第二列開始一直到 <= 正在遍歷的行數 - 1
arr[i][j] = arr[i - 1][j] + arr[i - 1][j - 1]; //計算楊輝三角中不爲1的元素,即爲正上方與左斜上方元素的和
for ( i = 0; i < n; i++){
for ( k = 0; k < n - 1 - i; k++) //列印空格,很容易找出每行列印空格書的規律
printf(" ");
for ( j = 0; j <= i; j++) //列印數位
printf("%4d", arr[i][j]);
printf("\n"); //每列印完一行換行
}
return 0;
}