二项式系数展开式:
例如:
这又是一个将数理知识代码化的编程实例问题.
首先这是一个二项式系数(又名杨辉三角形),所以其内的参数m应永远大于
参数n。
故只需再设计阶乘函数即可解决.
阶乘函数肯定需要找中介
有两种算法实现阶乘.
while(n)
t*=n--;
for(i=1;i<N;i++)
{
t=t*N;
N--;
}
考虑到时间复杂度的原因,我就采用了第一种方法,最后的代码实现为:
#include <stdio.h>
int Cau(int n)
{
float i=1;
while(n)
i*=n--;
return i;
}
int main()
{
int m,n;
printf("请输入上限n:");
scanf("%d",&n);
printf("\n请输入下限m:");
scanf("%d",&m);
printf("c(m,n)=%d\n",Cau(m)/Cau(n)/Cau(m-n));
return 0;
}
该题考察了阶乘的利用与数学函数间的关系.