#include stdio.h
成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供加查網(wǎng)站建設(shè)、加查做網(wǎng)站、加查網(wǎng)站設(shè)計(jì)、加查網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、加查企業(yè)網(wǎng)站模板建站服務(wù),10余年加查做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
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);
}
擴(kuò)展資料
算法思想
利用格式輸入語句將輸入的兩個數(shù)分別賦給 a 和 b,然后判斷 a 和 b 的關(guān)系,如果 a 小于 b,則利用中間變量 t 將其互換。
再利用輾轉(zhuǎn)相除法求出最大公約數(shù),進(jìn)而求出最小公倍數(shù)。最后用格式輸出語句將其輸出。
#includestdio.h是在程序編譯之前要處理的內(nèi)容,稱為編譯預(yù)處理命令。編譯預(yù)處理命令還有很多,它們都以“#”開頭,并且不用分號結(jié)尾,所以是c語言的程序語句。
#includestdio.h
int gcd(int m, int n);
int lcd(int m, int n);
int main()
{
int a, b;
printf("輸入兩個正整數(shù):");
scanf("%d%d", a, b);
printf("%d 和 %d 最大公約數(shù)為%d\n", a, b, gcd(a, b));
printf("最小公倍數(shù)為:%d\n", lcd(a, b));
}
int gcd(int m, int n)
{
int t;
if (mn)
{
t = m;
m = n;
n = t;
}
while (n != 0)
{
t = m%n;
m = n;
n = t;
}
return m;
}
int lcd(int m, int n)
{
int t;
t = m*n / gcd(m, n);
return t;
}
#includelt;stdio.hgt;
int main()
{
int m,n,temp,i;
printf("Input mn:");
scanf("%d%d",m,n);
if(mlt;n)/*比較大小,使得m中存儲大數(shù),n中存儲小數(shù)*/
{
temp=m;
m=n;
n=temp;
}
for(i=m;igt;0;i++)/*從大數(shù)開始尋找滿足條件的自然數(shù)*/
if(i%m==0i%n==0)
{/*輸出滿足條件的自然數(shù)并結(jié)束循環(huán)*/
printf("The LCW of%d and%d is:%d\n",m,n,i);
break;
}
return 0;
}
算法設(shè)計(jì)
對于輸入的兩個正整數(shù)m和n每次輸入的大小順序可能不同,為了使程序具有一般性,首先對整數(shù)所m和n進(jìn)行大小排序,規(guī)定變量m中存儲大數(shù)、變量n中存儲小數(shù)。
輸入的兩個數(shù),大數(shù)m是小數(shù)n的倍數(shù),那么大數(shù)m即為所求的最小公倍數(shù);若大數(shù)m不能被小數(shù)n整除則需要尋找一個能同時被兩數(shù)整除的自然數(shù)。
從大數(shù)m開始依次向后遞增直到找到第一個能同時被兩數(shù)整除的數(shù)為止,所以循環(huán)變量i的初值為尋找第一個能同時被兩整數(shù)整除的自然數(shù),并將其輸出。需要注意的是,在找到第一個滿足條件的i值后,循環(huán)沒必要繼續(xù)下去,所以用break來結(jié)束循環(huán)。
擴(kuò)展資料:
include用法:
#include命令預(yù)處理命令的一種,預(yù)處理命令可以將別的源代碼內(nèi)容插入到所指定的位置;可以標(biāo)識出只有在特定條件下才會被編譯的某一段程序代碼;可以定義類似標(biāo)識符功能的宏,在編譯時,預(yù)處理器會用別的文本取代該宏。
插入頭文件的內(nèi)容
#include命令告訴預(yù)處理器將指定頭文件的內(nèi)容插入到預(yù)處理器命令的相應(yīng)位置。有兩種方式可以指定插入頭文件:
1、#includelt;文件名gt;
2、#include"文件名"
如果需要包含標(biāo)準(zhǔn)庫頭文件或者實(shí)現(xiàn)版本所提供的頭文件,應(yīng)該使用第一種格式。如下例所示:
#includelt;math.hgt;//一些數(shù)學(xué)函數(shù)的原型,以及相關(guān)的類型和宏
如果需要包含針對程序所開發(fā)的源文件,則應(yīng)該使用第二種格式。
采用#include命令所插入的文件,通常文件擴(kuò)展名是.h,文件包括函數(shù)原型、宏定義和類型定義。只要使用#include命令,這些定義就可被任何源文件使用。如下例所示:
#include"myproject.h"http://用在當(dāng)前項(xiàng)目中的函數(shù)原型、類型定義和宏
你可以在#include命令中使用宏。如果使用宏,該宏的取代結(jié)果必須確保生成正確的#include命令。例1展示了這樣的#include命令。
【例1】在#include命令中的宏
#ifdef _DEBUG_
#define MY_HEADER"myProject_dbg.h"
#else
#define MY_HEADER"myProject.h"
#endif
#include MY_HEADER
當(dāng)上述程序代碼進(jìn)入預(yù)處理時,如果_DEBUG_宏已被定義,那么預(yù)處理器會插入myProject_dbg.h的內(nèi)容;如果還沒定義,則插入myProject.h的內(nèi)容。