编程打印如下形式的杨辉三角形,(输出整数时以%5d作为格式控制),行数由键盘读入,少于10行。
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
测试用例:输入 | 测试用例:输出 |
1 | 1
|
2 | 1 1 1
|
5 | 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1
|
9 | 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
|
代码如下:
#include <stdio.h>
int fac(int n)
{
int i, f = 1;
for (i = 2; i <= n; ++i) {
f *= i;
}
return f;
}
int main()
{
int n, i, j;
scanf("%d", &n);
for (i = 0; i < n; ++i) {
for (j = 0; j <= i; ++j) {
printf("%5d", fac(i)/(fac(j)*fac(i - j)));
}
printf("\n");
}
return 0;
}