#includestdio.h
成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),五華企業(yè)網(wǎng)站建設(shè),五華品牌網(wǎng)站建設(shè),網(wǎng)站定制,五華網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,五華網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
void swap(int *m,int *n){
int t;
if(m n){
t = n;
n = m;
m = t;
}
}
int f(int m,int n){
if(m%n == 0)return n;
else
return f(n,m%n);
}
int main(){
int p = 0,m = 0,n = 0;
printf("請(qǐng)按照由大到小的順序輸入兩個(gè)整數(shù),用空格隔開(kāi):\n");
scanf("%d%d",m,n);
swap(m,n);
p = f(m,n);
printf("兩個(gè)數(shù)的最大公約數(shù)是:%d\n",p);
return 0;
}
其實(shí)很簡(jiǎn)單 就是利用遞歸
中間存在個(gè)遞歸么 就是當(dāng)?shù)谝粋€(gè)參數(shù)能被第二個(gè)參數(shù)整除 即代碼中的b為零 3目運(yùn)算就把第一個(gè)參數(shù)輸出了 那么第二個(gè)參數(shù)就是最大公約數(shù)了
然后就是如果無(wú)法除盡 第一種情況 a〉b 公約數(shù)肯定是小于b的(小于即a%b模) 然后將(b,a%b)遞歸運(yùn)算,就可以重復(fù)上述過(guò)程獲得最大公約數(shù)
第二種 GCD(a,b)中ab就是將 a和b交換了位置遞歸 因?yàn)閍%b肯定為a 所以就相當(dāng)于 GCD(b,a)
#includestdio.h
int?gcd(int?a,int?b)
{if(a%b==0)return?b;
return?gcd(b,a%b);
}
int?main()
{int?a,b;
scanf("%d%d",a,b);
printf("%d\n",gcd(a,b));??
return?0;
}
#include?stdio.h
int?gcd(int?m,int?n)?{
if(m*n==0)
return?(m==0?n:m);
if(mn)
return?gcd(m%n,n);
else?if(mn)
return?gcd(n%m,m);
}
int?main(void)?{
int?m,n;
printf("請(qǐng)輸入兩個(gè)數(shù):\n");
scanf("%d%d",m,n);
printf("其最大公約數(shù)為:\n");
printf("%d\n",gcd(m,n));
return?0;
}
運(yùn)行結(jié)果
網(wǎng)站欄目:c語(yǔ)言最大公約數(shù)遞歸函數(shù) c語(yǔ)言最大公約數(shù)的函數(shù)
文章起源:http://bm7419.com/article28/ddejgjp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、App開(kāi)發(fā)、企業(yè)建站、標(biāo)簽優(yōu)化、網(wǎng)站設(shè)計(jì)、App設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)