编写程序求m!/(n!*(m-n)!)的值。
时间: 2023-06-05 10:47:57 浏览: 146
C语言程序设计-编写main程序调用函数fact求解从m个元素选n个元素的组合数的个数;组合数=m!(n!.(m-n)!);
5星 · 资源好评率100%
可以使用循环或递归的方式来编写程序求解m!/(n!*(m-n)!)的值。
循环方式:
1. 首先判断n是否大于m-n,如果是,则交换n和m-n的值,使得n始终小于等于m-n。
2. 定义一个变量result,初始化为1。
3. 循环计算m到m-n+1的乘积,将结果累乘到result中。
4. 循环结束后,返回result的值即可。
递归方式:
1. 判断n是否等于或者n等于m,如果是,则返回1。
2. 否则,递归计算m-1和n-1的值,以及m-1和n的值。
3. 将这两个结果相除,返回结果即可。
无论是循环还是递归方式,都需要注意数据类型的选择,以及防止除数为的情况。
阅读全文