n1=i; i=m1%n1; } printf(最大公約數(shù) = %d\n,n1); printf(最小公倍數(shù) = %d\n,m*n/n1);}}如圖所示,望采納。。
目前創(chuàng)新互聯(lián)已為上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站托管運營、企業(yè)網(wǎng)站設(shè)計、烏恰網(wǎng)站維護(hù)等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
下面用到了遞歸解決,不知樓主能否看懂。不懂用百度hi和我私聊我也很樂意。遞歸只是求最大公約數(shù),通過最大公約數(shù)求最小公倍數(shù)。
int m,n,r,a,b;b=m*n;while(n!=0){ r=m%n;m=n;n=r;} a=m;b=b/a;a是最大公約數(shù)b是最小公倍數(shù),程序輸入輸出自己寫。最大公約數(shù)用的是歐幾里德算法,最小公倍數(shù)為兩數(shù)相乘除以最大公約數(shù)。
1、n=r;r=m%n;} printf(兩個數(shù)字的最大公約數(shù)為%d\n,n);getch();} 這個算法就是把你初中算最大公約數(shù)的過程給程序化了。你用以前的方法在紙上算算最大公約數(shù) 再對照WHILE里面的算法 就能明白咋回事了。
2、你可以編寫一個程序,實現(xiàn)輾轉(zhuǎn)相除法(歐幾里得算法),來求得最大公約數(shù),然后用兩個數(shù)相乘再除以最大公約數(shù)來,得到最小公倍數(shù)。
3、編寫兩個函數(shù),分別求兩個整數(shù)的最大公約數(shù)和最小公倍數(shù)。
編寫該程序的整體思路:分別定義最大公約數(shù)函數(shù)和最小公倍數(shù)函數(shù),然后再main函數(shù)里面調(diào)用它。
int r;while(r==0)這兩句中r還沒有賦值就拿來引用了,屬于嚴(yán)重錯誤。
思路:求兩個數(shù)的最大公約數(shù)使用輾轉(zhuǎn)相除法。輾轉(zhuǎn)相除法,又名歐幾里德算法(Euclidean algorithm)乃求兩個正整數(shù)之最大公因子的算法。原理:兩個整數(shù)的最大公約數(shù)等于其中較小的數(shù)和兩數(shù)的差的最大公約數(shù)。
本文標(biāo)題:c語言兩個數(shù)的公約數(shù)函數(shù) c語言求兩個數(shù)的公因數(shù)
URL分享:http://chinadenli.net/article15/depjpdi.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、定制網(wǎng)站、網(wǎng)站排名、域名注冊、網(wǎng)站導(dǎo)航、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)