/******************************
杨辉三角:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
...........
******************************/
由上所示,我们可以得知杨辉三角,每一行的元素个数和其所在行数相等,同时每一行的第一个和最后一个元素都为1,其余元素为(a[i-1][j-1]+a[i-1][j]),根据现有情况我们可以定义以下代码实现杨辉三角。
#include<stdio.h>
#define M 10
int main() {
int a[M][M];
int i;
int j;
for (i = 0; i < M; i++) {
for (j = 0; j < M; j++) {
a[i][0] = 1;
a[i][i] = 1;// 将每一行第一个和最后一个元素赋值为1;
if (i > 1 && i != j) {
a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
}
}
}
printf("The Yang Hui Triangle is :\n");
for (i = 0; i < M; i++) {
for (j = 0; j <= i; j++) {
// 打印输出杨辉三角(每一行元素的个数等于行数的大小)
printf("%d ", a[i][j]);
}
printf("\n");
}
return 0;
}