蓝桥杯基础c语言入门 杨辉三角
  分析: 由杨辉三角的规律可得,一行的第一个和最后一个永远都是1,所以我们需要单独处理。
for (i = 0; i < n; i++) {
for (j = 0; j <= i; j++) {
a[i][0] = 1;
if (i == j) {
a[i][j] = 1;
}
}
综上代码如下
#include <stdio.h>
int main() {
int n, i, j;
int a[100][100];
while (scanf_s("%d", &n) != EOF) {
for (i = 0; i < n; i++) {
for (j = 0; j <= i; j++) {
a[i][0] = 1;
if (i == j) {
a[i][j] = 1;
}
}
}
for (i = 2; i < n; i++) {
for (j = 1; j < i; j++) {
a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
}
}
for (i = 0; i < n; i++) {
for (j = 0; j <= i; j++) {
printf("%d ", a[i][j]);
}
printf("\n");
}
}
return 0;
}
|