- 以下是杨辉三角的函数实现,使用时直接用c[3][2]就是组合数 C 3 2 C_{3}^{2} C32的值
- 以下是函数实现
#include <bits/stdc++.h>
using namespace std;
long long c[105][105];
const int mod = 1000000007;
void init(int n)
{
c[0][0] = 1;
printf("这是第0行: \n");
printf("%8.0lld\n", c[0][0]);
for(int i = 1; i <= n; i++)
{
printf("这是第%d行: \n", i);
c[i][0] = 1;
printf("%8.0lld", c[i][0]);
for(int j = 1; j <= n; j++)
{
c[i][j] = (c[i-1][j-1] + c[i-1][j]) % mod;
printf("%8.0lld", c[i][j]);
}
printf("\n");
}
}
int main()
{
int n;
scanf("%d", &n);
init(n);
return 0;
}
- 输出结果:
这里输入10,当输入的数比较大的时候,记得要取模哟!
这是第0行:
1
这是第1行:
1 1
这是第2行:
1 2 1
这是第3行:
1 3 3 1
这是第4行:
1 4 6 4 1
这是第5行:
1 5 10 10 5 1
这是第6行:
1 6 15 20 15 6 1
这是第7行:
1 7 21 35 35 21 7 1
这是第8行:
1 8 28 56 70 56 28 8 1
这是第9行:
1 9 36 84 126 126 84 36 9 1
这是第10行:
1 10 45 120 210 252 210 120 45 10 1