C程序设计第六章作业 6
目录:程序员成长之旅/C语言/习题(C语言程序设计)/第六章习题
问:
输出杨辉三角形 (10行)
答:
#include<stdio.h> //杨辉三角形
#define N 10//此处修改可以控制输出总行数 所有参数会随之变动
int main() {
int row1 = 0, row2 = 0;
row1 = N;
for (int k = 1; k <= N; k++) {
row2 += k;
}
int i = 1, j = 0, l = 0;
int Num[N+1][N+1] = { {1},{1,1} };//前两行手动定义
int Num1 = 0, Num2 = 0, flag1 = 1;
for (i = 0; i < N; i++) {
if (flag1 >= 3) {//跳过前两行 第三行开始计算
for (l = 0; l < flag1; l++) {//根据当前行数 限制循环次数
//从第二位写入数据
Num[i][l + 1] = Num[i - 1][l] + Num[i - 1][l + 1];
}
Num[i][0] = 1;//第一位 数字1
Num[i][flag1 - 1] = 1;//最后一位 数字1
}
flag1++;
}
for (i = 0; i < N; i++) {
for (j = 0; j <= i; j++) {
printf("%d\t", Num[i][j]);
}
printf("\n");
}
}
运行截图:
🖼 图片占位(归档模式)图片见原始导出:
C%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1%E7%AC%AC%E5%85%AD%E7%AB%A0%E4%BD%9C%E4%B8%9A%206.assets/e955bb10-8452-456f-8bbf-7101ee2c8fa4.png