#include <iostream>
#include <Windows.h>
#include <iomanip>
using namespace std;
#define N 15
int main(void){
int yanghui[N][N]={0}; //数组元素清零
/**
for(int i=0; i<N; ++i){
yanghui[i][0]=1;
yanghui[i][i]=1;
}
**/
for(int i=0; i<N; ++i){
for(int j=0; j<=i; ++j){
if(j==0 || i==j){
yanghui[i][j]=1;
}else{
yanghui[i][j]= yanghui[i-1][j-1]+yanghui[i-1][j];
}
}
}
/**
//输出 直角三角形
for(int i=0; i<N; ++i){
for(int j=1; j<=i; ++j){
cout << setw(4);
cout << yanghui[i][j];
}
cout << endl;
}
**/
//打印
for(int i=0; i<N; ++i){
cout << setw((N-i)*4) << yanghui[i][0]; //打印空格
for(int j=1; j<=i; ++j){
cout << setw(8) << yanghui[i][j];
}
cout << endl;
}
cout << endl;
system("pause");
return 0;
}
/**
实现思路: 我们定义一个二维数组,所有元素先初始化为 0;
给数组的第 1 列和对角线元素赋值为
1; 其余元素
a[i][j]=a[i-1][j-1]+a[i-1][j];
**/