首页 > 其他分享 >编写一个函数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!

时间:2024-06-14 22:23:47浏览次数:11  
标签:return 函数 int float result fun

编写一个函数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;
}

标签:return,函数,int,float,result,fun
From: https://www.cnblogs.com/yesiming/p/18248741

相关文章

  • 下列程序定义了N×N的二维数组,并在主函数中自动赋值。请编写函数 fun(int a[][N]),该
    下列程序定义了N×N的二维数组,并在主函数中自动赋值。请编写函数fun(inta[][N]),该函数的功能是:使数组左下半三角元素中的值全部置成0。#include<stdio.h>#defineN3voidfun(inta[][N]){for(inti=1;i<N;i++){for(intj=0;j<i;j++){......
  • ts函数组注解
    语法://function(形参:类型,形参n:类型n....):返回值类型{//return内容//}例子:functionadd(a:number,b:number):number{returna+b}letres=add(1,2)letres=add(1,false)//错误 别名语法://type别名=(形参1:类型1,形参n:......
  • flask路由系统、偏函数、CBV、模板、请求响应、session、请求扩展
    路由系统1代码演示23fromflaskimportFlask45app=Flask(__name__)67app.debug=True8#路由基本使用9#@app.route('/',methods=['GET'])10#@app.get()11#@app.post()12defindex(name):13print(name)14return&......
  • [晕事]今天做了件晕事37 extern “C“ 被认为了是外部函数
    最近看到一个函数声明是extern“C"void_dump();这里的声明是要告诉编译器,这个_dump是C语言的符号,没有经过mangle过的。但是这个关键字可能让人混淆是外部函数。因为这个关键字可以声明外部函数。这也算是一词多用的一个普遍问题。关键的关键是上面的这种写法,可能会让......
  • Pandas中dropna()函数理解
    今天在使用dropna函时候,感觉有点混乱,不明白为什么为何下面两个代码,how和参数选择all和选择any都是同样的结果。当时想的是对A列进行删除,如果A列全部是Na那么选择All才会生效。 实际原理如下:1:axis=0为按照行删除,axis=1为按照列删除。2:如果不设置subset参数,则默认在所有行/......
  • 深入理解 Spring 事务的钩子函数
    目录引言Spring事务概述2.1事务的基本概念2.2Spring事务管理简介事务钩子函数简介3.1什么是事务钩子函数3.2事务钩子函数的作用Spring事务钩子函数的实现4.1PlatformTransactionManager接口4.2TransactionSynchronization接口4.3TransactionSynchronizati......
  • EXCEL的函数
    一、if:判断函数1、if函数的基本用法语法:if(条件,值1,值2)如果条件的结果是真,则返回值1,否则返回值2举例:如果性别是男,则称呼为先生,否则称呼为女士公式:=IF(E2="男","先生","女士")注意:如果参数是字符串,需要用英文的双引号""2、if的嵌套语法:if(条件1,值1,if(条件2,值2,值3))如果条件1......
  • 【C++】类的默认成员函数
    类的默认成员函数类的六个默认成员函数构造函数构造函数的概念构造函数的特性析构函数析构函数的概念析构函数的特性构造函数与析构函数的调用顺序拷贝构造拷贝构造的概念拷贝构造的特性赋值运算符重载运算符重载赋值运算符重载前置++与后置++重载输入输出流重载const......
  • openh264 帧内预测编码原理:WelsMdI4x4 函数
    介绍功能:针对4x4像素块的帧内模式决策原型:int32_tWelsMdI4x4(sWelsEncCtx*pEncCtx,SWelsMD*pWelsMd,SMB*pCurMb,SMbCache*pMbCache)参数:sWelsEncCtx*pEncCtx:指向编码上下文结构的指针,包含编码过程中需要的状态信息。SWelsMD*pWelsMd:指向运动检测结构的......
  • C++学习笔记-----类和构造函数
    类和结构体class和struct的区别在于class默认是private的而struct默认是public的struct继承自另一个struct或class时,默认继承方式是public继承class继承自另一个class或struct时,默认继承方式是private继承class继承自struct,则默认继承方式还是public,以保持......