编写一个函数fun,它的功能是:根据以下公式求P的值,结果由函数值带回。m与n为两个正整数,且要求m>n。 p=m!/n!(m-n)! (float)m!

编写一个函数fun,它的功能是:根据以下公式求P的值,结果由函数值带回。m与n为两个正整数,且要求m>n。 p=m!/n!(m-n)! (float)m!

#include <stdio.h>
float factorial(int n) {
    if (n == 0) {
        return 1.0;
    } else {
        return n * factorial(n - 1);
    }
}

float fun(int m, int n) {
    if (m <= 0 || n <= 0 || m <= n) {
        return -1.0; // 输入数据不符合要求
    }

    float p = factorial(m) / (factorial(n) * factorial(m - n));
    
    return p;
}

int main() {
    int m, n;
    printf("请输入两个正整数 m 和 n (要求 m > n): ");
    scanf("%d %d", &m, &n);

    float result = fun(m, n);

    if (result != -1.0) {
        printf("计算结果为: %f\n", result);
    } else {
        printf("输入数据不符合要求\n");
    }

    return 0;
}

posted on 2024-06-14 22:10  wessf  阅读(68)  评论(0)    收藏  举报