C语言怎么用POW函数写掷硬币代码

**投掷n次硬币,请计算m次正面朝上的概率例如:
投掷9次硬币,5次正面朝上的概率为:24.61%投掷5次硬币,3次正面朝上的概率为:31.25%提示:
1.for循环的累乘-阶乘
2.#include<math.h>中的pow()函数

```c

```**

如下:

img

代码:

#include <stdio.h>
#include <math.h>
long long jc(int n)
{
    long long s=1;
    int i;
    for(i=1;i<=n;i++)
        s*=i;
    return s;
}

int main()
{
    int m,n;
    double fz,fm;
    scanf("%d %d",&n,&m);
    fz = jc(n)/jc(n-m)/jc(m);
    fm = pow(2.0,n);
    printf("%.2f%%",100*fz/fm);
    return 0;
}

#include <stdio.h>
long long jc(int n)
{
    long long r = 1;
    for(int i=1;i<=n;i++)
        r*=i;
    return r;
}

long long items(int n,int m)
{
    return jc(n)/jc(m)/jc(n-m);
}

int main()
{
    int n,m,i;
    long long r=0,sum = 0;
    scanf("%d%d",&n,&m);
    r = items(n,m);
    for(i=0;i<=n;i++)
        sum += items(n,i);
    printf("%.2lf%%\n",r*100.0/sum);
    return 0;
}


#include<stdio.h>
#include<math.h>
int main()
{
    int m,n;
    double p;
    scanf("%d %d",&n,&m);
    int a=1;
    for(int i=n;i>n-m;i--){
        a=a*i;
    }
    int b=1;
    for(int j=m;j>=1;j--){
        b=b*j;
    }
    p=a/b*1.0*100*pow(0.5,n);
    printf("%.2f%%\n",p);
}