#include
創(chuàng)新互聯(lián)公司-云計(jì)算及IDC服務(wù)提供商,涵蓋公有云、IDC機(jī)房租用、雅安移動(dòng)機(jī)房、等保安全、私有云建設(shè)等企業(yè)級(jí)互聯(lián)網(wǎng)基礎(chǔ)服務(wù),電話聯(lián)系:18980820575
"stdio.h"
int
main()
{
int
d1,d2,r;
printf("輸入兩個(gè)正整數(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("輸入兩個(gè)正整數(shù):");
scanf("%d
%d",d1,d2);
printf("最大公約數(shù)是:%d",fun(d1,d2));
}
具體操作步驟如下:
一、新建一個(gè)C語言源程序,使用Visual C++6.0的軟件。
二、從鍵盤中輸入兩個(gè)正整數(shù)a和b。代碼:printf("please input two number:\n");int a,b;scanf("%d%d",a,b)。
三、取兩個(gè)數(shù)a,b中的較小值存放到變量n中。代碼:int n=a;if (nb)n=b。
四、從兩個(gè)數(shù)a和b中的較小數(shù)開始逐個(gè)減小1,尋找能整除a和b的整數(shù)。第一個(gè)找到的整數(shù)即整數(shù)a和b的最大公約數(shù)。
五、點(diǎn)擊工具欄的如圖圖標(biāo),對(duì)源程序編譯運(yùn)行。
六、測(cè)試輸入4,6,得到最大公約數(shù)2。程序是正確的,以測(cè)試更多的數(shù)。
七、
上面面步驟是編程的思路,給出完整代碼,方便復(fù)制使用。#includestdio.hvoid main(){printf("please input two number:\n"); int a,b;;scanf("%d%d",a,b);//從鍵盤輸入兩個(gè)數(shù) int n=a; ;f (nb) n=b;//取兩個(gè)數(shù)中的較小數(shù) for(int i=n;i=1;i--) { if (a%i==0b%i==0) { printf("最大公約數(shù):%d \n",i); break;}}}。
#include stdio.h
int main()
{
int a,b,c,m,t;
printf("請(qǐng)輸入兩個(gè)數(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);
}
擴(kuò)展資料
算法思想
利用格式輸入語句將輸入的兩個(gè)數(shù)分別賦給 a 和 b,然后判斷 a 和 b 的關(guān)系,如果 a 小于 b,則利用中間變量 t 將其互換。
再利用輾轉(zhuǎn)相除法求出最大公約數(shù),進(jìn)而求出最小公倍數(shù)。最后用格式輸出語句將其輸出。
#includestdio.h是在程序編譯之前要處理的內(nèi)容,稱為編譯預(yù)處理命令。編譯預(yù)處理命令還有很多,它們都以“#”開頭,并且不用分號(hào)結(jié)尾,所以是c語言的程序語句。
#include?stdio.h
int?main(int?argc,char?*argv[]){
int?a,b,r;
if(scanf("%d%d",a,b)!=2?||?a1?||?b1){
printf("Input?error,?exit...\n");
return?0;
}
while(b){
r=a%b,a=b,b=r;
}
printf("The?GCD?is?%d\n",a);
return?0;
}