C语言递归函数

来源:百度知道 编辑:UC知道 时间:2024/05/25 11:00:28
请用C语言或者C++编写个函数求P{x=k+1}=p*(n-k)/(1-p)/(k+1)P{x=k}
(这是个求分布函数的公式)

P(X=k)=[n!/(k!(n-k)!]*p^k*(1-p)^(n-k)
=[(n-k+1)/k]*[p/(1-p)]*[n!/(k-1)!(n-k+1)!]*p^(k-1)*(1-p)^(n-k+1)
=[(n-k+1)/k]*[p/(1-p)]*P(X=k-1),

[(n-k+1)/k]*[p/(1-p)]>1时,即k<(n+1)p时,P(X=k)>P(X=k-1),k值较小时,P(X=k)随k的增大而增大,
[(n-k+1)/k]*[p/(1-p)]<1时,即k>(n+1)p时,P(X=k)<P(X=k-1),k值较大时,P(X=k)随k的增大而减小,
[(n-k+1)/k]*[p/(1-p)]=1时,即k=(n+1)p时,P(X=k)=P(X=k-1).(n+1)p为正整数时,有两个最大值。

//欢迎在线讨论P{x=k+1}=p*(n-k)/(1-p)/(k+1)P{x=k}

#include <stdio.h>

int cpp(int k)
{
if(k==1)
return 1;
return 2*cpp(k-1);
}

int main()
{
printf("%d\n",cpp(10));
return 0;
}

#include <stdio.h>
void main()
{
printf("%d\n",cpp(10));
return 0;
}
int cpp(int k)
{
if(k==1)
return 1;
return 2*cpp(k-1);
}

你没有告诉p(x=0)和p(x=1)的值啊