C/C++实现组合数计算
输入与输出:
中间部分是杨辉三角。
其中,i与j的变化
代码实现
#include <iostream>
using namespace std;
int combinatorial[100][100];
int C(int n, int m) {
for (int i = 0; i<n+1; ++i) {
for (int j = 0; j<i+1; ++j) {
if (i == j || j == 0) {
combinatorial[i][j] = 1;
}
else {
combinatorial[i][j] = combinatorial[i-1][j] + combinatorial[i-1][j-1];
}
printf("%d ",combinatorial[i][j]); // 可观测其杨辉三角
}
printf("\n"); // 可观测其杨辉三角
}
return combinatorial[n][m];
}
int main() {
int x,y,result;
cout << "请输入组合数下与上:" << endl;
cin >> x >> y;
result = C(x,y);
cout << " " << y << endl;
cout << "C " << " = " << result << endl;
cout << " " << x << endl;
}