#include stdio.h
成都創(chuàng)新互聯(lián)公司堅持“要么做到,要么別承諾”的工作理念,服務領域包括:網(wǎng)站制作、成都網(wǎng)站設計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務,滿足客戶于互聯(lián)網(wǎng)時代的扎賚諾爾網(wǎng)站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡建設合作伙伴!
int main()
{
int a,b,c,m,t;
printf("請輸入兩個數(shù):\n");
scanf("%d%d",a,b);
if(ab)
{
t=a;
a=b;
b=t;
}
m=a*b;
c=a%b;
while(c!=0)
{
a=b;
b=c;
c=a%b;
}
printf("最大公約數(shù)是:\n%d\n",b);
printf("最小公倍數(shù)是:\n%d\n",m/b);
}
擴展資料
算法思想
利用格式輸入語句將輸入的兩個數(shù)分別賦給 a 和 b,然后判斷 a 和 b 的關系,如果 a 小于 b,則利用中間變量 t 將其互換。
再利用輾轉(zhuǎn)相除法求出最大公約數(shù),進而求出最小公倍數(shù)。最后用格式輸出語句將其輸出。
#includestdio.h是在程序編譯之前要處理的內(nèi)容,稱為編譯預處理命令。編譯預處理命令還有很多,它們都以“#”開頭,并且不用分號結(jié)尾,所以是c語言的程序語句。
1、新建一個C語言源程序,這里使用Visual C++6.0的軟件:
2、從鍵盤中輸入兩個正整數(shù)a和b。取兩個數(shù)a,b中的較小值存放到變量n中。從兩個數(shù)a和b中的較小數(shù)開始逐個減小1,尋找能整除a和b的整數(shù),第一個找到的整數(shù)即整數(shù)a和b的最大公約數(shù),最后將找到的結(jié)果輸出即可完成程序的編寫:
3、對源程序編譯運行,測試輸入4、6,得到最大公約數(shù)2說明程序是正確的,以上就是用c語言求最大公約數(shù)的過程:
#include
"stdio.h"
int
main()
{
int
d1,d2,r;
printf("輸入兩個正整數(shù):");
scanf("%d
%d",d1,d2);
do
{
r=d1%d2;
d1=d2;d2=r;
}while(d2!=0);
printf("最大公約數(shù)是:%d",d1);
}
//遞歸法
#include
"stdio.h"
int
fun(int
d1,int
d2)
{
if(d2!=0)
return
fun(d2,d1%d2);
else
return
d1;
}
int
main()
{
int
d1,d2;
printf("輸入兩個正整數(shù):");
scanf("%d
%d",d1,d2);
printf("最大公約數(shù)是:%d",fun(d1,d2));
}
具體操作步驟如下:
一、新建一個C語言源程序,使用Visual C++6.0的軟件。
二、從鍵盤中輸入兩個正整數(shù)a和b。代碼:printf("please input two number:\n");int a,b;scanf("%d%d",a,b)。
三、取兩個數(shù)a,b中的較小值存放到變量n中。代碼:int n=a;if (nb)n=b。
四、從兩個數(shù)a和b中的較小數(shù)開始逐個減小1,尋找能整除a和b的整數(shù)。第一個找到的整數(shù)即整數(shù)a和b的最大公約數(shù)。
五、點擊工具欄的如圖圖標,對源程序編譯運行。
六、測試輸入4,6,得到最大公約數(shù)2。程序是正確的,以測試更多的數(shù)。
七、
上面面步驟是編程的思路,給出完整代碼,方便復制使用。#includestdio.hvoid main(){printf("please input two number:\n"); int a,b;;scanf("%d%d",a,b);//從鍵盤輸入兩個數(shù) int n=a; ;f (nb) n=b;//取兩個數(shù)中的較小數(shù) for(int i=n;i=1;i--) { if (a%i==0b%i==0) { printf("最大公約數(shù):%d \n",i); break;}}}。