定义:

在数学中,正整数的阶乘(英语:factorial)是所有小于及等于该数的正整数的积,计为n!,例如5的阶乘计为5!,其值为120:
\[ 5!=5\times 4\times 3\times 2\times 1=120\,.\]
并定义,1的阶乘1!为1、0的阶乘0!亦为1,其中,0的阶乘表示一个空积

普遍方法实现阶乘

int factorial(int num)
{int sum = 1;for (int i = 1; i <= num; i++)sum *= i;return sum;
}

使用递归的思想实现阶乘

int factorial(int n)
{int sum = 1;return n == 1? sum = 1: n * factorial(n - 1);
}

使用迭代思想实现阶乘

int factorial(int n)
{int result = 1;for (; n > 1; n--)result *= n;return result;
}

转载于:https://www.cnblogs.com/JingWenxing/p/10182858.html

阶乘函数(factorial)——结果在整型范围内的阶乘计算相关推荐

  1. A+B问题的题目描述如下:给定两个整数A和B,输出A+B的值。保证A、B及结果均在整型范围内。

    A+B问题的题目描述如下:给定两个整数A和B,输出A+B的值.保证A.B及结果均在整型范围内 输入 一行,包含两个整数A,B,中间用单个空格隔开.A和B均在整型范围内. 输出 一个整数,即A+B的值. ...

  2. 本题要求编写程序,对输入的一个整数,从高位开始逐位分割并输出它的各位数字。输入格式:输入在一行中给出一个长整型范围内的非负整数。输出格式:从高位开始逐位输出该整数的各位数字,每个数字后面有一个空格

    本题要求编写程序,对输入的一个整数,从高位开始逐位分割并输出它的各位数字.输入格式:输入在一行中给出一个长整型范围内的非负整数.输出格式:从高位开始逐位输出该整数的各位数字,每个数字后面有一个空格 1 ...

  3. 信息学奥赛一本通(1022:整型与布尔型的转换)

    1022:整型与布尔型的转换 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 36022     通过数: 31210 [题目描述] 将一个整型变量的值赋给一个布尔 ...

  4. 整型与布尔型的转换(信息学奥赛一本通-T1022)

    [题目描述] 将一个整型变量的值赋给一个布尔型变量,再将这个布尔型变量的值赋给一个整型变量,得到的值是多少? [输入] 一个整型范围内的整数,即初始时整型变量的值. [输出] 一个整数,经过上述过程后 ...

  5. 信息学奥赛一本通C++语言——1022: 整型与布尔型的转换

    [题目描述] 将一个整型变量的值赋给一个布尔型变量,再将这个布尔型变量的值赋给一个整型变量,得到的值是多少? [输入] 一个整型范围内的整数,即初始时整型变量的值. [输出] 一个整数,经过上述过程后 ...

  6. 09:整型与布尔型的转换

    原题 描述 将一个整型变量的值赋给一个布尔型变量,再将这个布尔型变量的值赋给一个整型变量,得到的值是多少? 输入 一个整型范围内的整数,即初始时整型变量的值. 输出 一个整数,经过上述过程后得到的结果 ...

  7. 整型与布尔型的转换(C++)

    C++在C语言的基本类型系统之上增加了bool C++中的bool可取的值只有true和 false 理论上bool只占用一个字节 C++编译器会将非0值转换为true ,0值转换为false 好了我 ...

  8. 1022:整型与布尔型的转换

    1022:整型与布尔型的转换 时间限制: 1000 ms 内存限制: 65536 KB [题目描述] 将一个整型变量的值赋给一个布尔型变量,再将这个布尔型变量的值赋给一个整型变量,得到的值是多少? [ ...

  9. 类型转换:隐式转化(算数转换,整型提升,混合提升,赋值转换),强制转换【C语言】

    类型转换 隐式转化 算数转换 整型提升 混合提升 赋值转换 强制转换 编译器使用注意 小结 类型转换 隐式转化 不需要人为参与而产生的默认转称为隐式转化. 隐式转化,是计算机语言实现层面最难的,指针是 ...

最新文章

  1. AI换脸技术再创新高度,DeepMind发布的VQ-VAE二代算法有多厉害?
  2. Cocos本地存储LocalStorage
  3. WF工作流开发回顾:介绍
  4. NYOJ 12 喷水装置(二)
  5. 用一句sql语句更新两个表并可更新对应的字段的值
  6. dell跳过开机硬件检测,关闭dell开机硬件自检 戴尔笔记本电脑每次开机自动硬件检查怎么取消?...
  7. MySQL的用户表(user)
  8. 推荐 | Transformer最新成果!Learn to Dance with AIST++: Music Conditioned 3D Dance Generation!
  9. Android学习笔记---19_采用ListView实现数据列表显示,以及各种适配器使用,和如何写自己的适配器
  10. java web容器_java-实现一个简单的java Web容器
  11. 从底层看云:云计算准备好了么?
  12. Linux:如何更新Ubuntu的数据源
  13. 字符串算法 —— 两字符串相同的单词
  14. 用ANSYS画矩形_用SolidWorks画一个带波浪纹路的瓶子
  15. 怎么删除服务中的mysql服务
  16. 欧拉函数计算公式的推导
  17. 新浪短连接(t.cn)在线生成工具
  18. Android Studio生成keystore签名文件
  19. msclass 文字滚动_【JS特效】不间断滚动效果通用类
  20. 五大机器学习微信公众号推荐

热门文章

  1. 修改host后立即生效
  2. javascript模块模式深度探索 豆瓣javascript组译文2
  3. python爬虫 文本含有nbsp该如何解决
  4. 《梁启超家书》笔记一人生惟常常受苦乃不觉苦,不致为苦所窘耳
  5. 怎么去掉html a超链接下划线
  6. 主角真的有那么重要?(转自亿客CRM)
  7. 循环结构(一) for的格式及用法
  8. 我答辩的过程:)))
  9. HRNetV2:《High-Resolution Representations for Labeling Pixels and Regions》
  10. java如何优雅的写业务逻辑_java业务逻辑,写在哪里比较好?