/*
* Author: 余性笃厚
* Description:杨辉三角形
* (1) (2)
* 1 1
* 1 1 1 1
* 1 2 1 1 2 1
* 1 3 3 1 1 3 3 1
* 1 4 6 4 1 1 4 6 4 1
*
*/
#include <stdio.h>
int main(void) {
int i, j;
int arr[5][5];
/* 行 */
for (i = 0; i < 5; i++) {
/* 输出空格,杨辉三角形(2)形状只要增加这三列 */
// for (j = 5; j > i; j--) {
// printf(" ");
// }
/* 列 */
for (j = 0; j <= i; j++) {
if (j == 0 || i == j) { //数值为1的条件
arr[i][j] = 1;
}
else {
arr[i][j] = arr[i - 1][j - 1] + arr[i - 1][j]; //其它位置
}
/* 输出 */
printf("%-2d", arr[i][j]);
}
/* 换行 */
printf("\n");
}
return 0;
}
Result:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
注意: 可完善代码通过用户输入扩展行、列,以便达到深度更深的杨辉三角形