在屏幕上打印杨辉三角。
1
1 1
1 2 1
1 3 3 1
……
前提:每行端点与结尾的数为1
每个数为上方的两数之和,且头两行无需计算全都是1。
在框起来的三角形内 行都是>=2的,列都是>=1的。当行列都在范围内的时候才需要去计算。
#include#define MAX 10
int main()
{int arr[MAX][MAX] = {0};
int i,j;
for(i = 0;i< MAX;i++)
{for(j = 0;j<= i;j++)//让第i行打印i列
{if(0 == j)
{arr[i][j] = 1;//让第一列的数全部变成1
}
if(i == j)
{arr[i][j]= 1;//让最右端的数全部变为1
}
if(i >= 2 && j >= 1)//在第三行第二列的时候才开始需要去计算
{arr[i][j]= arr[i - 1][j]+ arr[i - 1][j - 1];//计算规律
}
printf("%-3d ",arr[i][j]);
}
putchar('\n');
}
return 0;
}
结果
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧