實(shí)現(xiàn)的算法很多, 下面給出一個(gè)不需要遞歸的算法; 需要設(shè)計(jì)兩個(gè)函數(shù)。
山亭網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。成都創(chuàng)新互聯(lián)從2013年成立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)。
unsigned long factorial (unsigned long n);
long long perm(unsigned long m, unsigned long n);
unsigned long factorial (unsigned long n)
{
unsigned long value = (n == 0) ? 1 : n;
while( n = 2 )
value *= --n;
return value;
}
long long perm(unsigned long m, unsigned long n)
{
if (m n)
return -1;
else
return (unsigned long) (factorial(n)/factorial(n-m));
}
只為了mn就要返回-1, 有點(diǎn)浪費(fèi)啊~~~
注意求值范圍, 如果需要可以int64擴(kuò)展。。。
#include stdio.h
void main()
{
void choose(int a,int b);
int a,b,c,d;
printf("請輸入兩個(gè)整數(shù),以0,0結(jié)束\n");
scanf("%d,%d",a,b);
scanf("%d,%d",c,d);
if(c==0d==0)
choose(a,b);
}
void choose(int a,int b)
{
if(ba)
{
printf("error!");
}
else
{
int fenmu=b,fenzi=a;
for(int i=a-1;ia-b;i--)
fenzi*=i;
for(int j=b-1;j1;j--)
fenmu*=j;
int temp;
temp=fenzi/fenmu;
printf("%d",temp);
}
}
C上標(biāo)是m下標(biāo)是n,表示從n個(gè)不同元素中任取m個(gè)元素的不同取法的種數(shù),稱為組合數(shù)。C上標(biāo)是m下標(biāo)是n等于(n!)/[m!*(n-m)!]
double?fact(long?num)
{
for?(long?i?=?1;?num??0;?num--)
{
i?*=?num;
}????
}
int?main()
{
long?m;
long?n;
long?C;
scanf("%ld?%ld",?m,?n);
C?=?fact(n)?/?((fact(m))?*?fact(n-m));
printf("%ld",C);
return?0;
}
本文題目:c語言中組合數(shù)的函數(shù),c++組合函數(shù)
標(biāo)題URL:http://muchs.cn/article16/hsscdg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、定制網(wǎng)站、微信小程序、App開發(fā)、網(wǎng)站營銷、自適應(yīng)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)