C語言之函數調用03—最大公約數和最小公倍數
//函數調用
/*
======================================================
題目:求兩個數的最大公約數和最小公倍數。
如:16和12的最大公約數是:4
16和12的最小公倍數是:48
======================================================
*/
#include
int GY(int m,int n)
{
int t,r;
if(n>m)
{t=m;m=n;n=t;}
while((r=m%n)!=0)
{
m=n;
n=r;
}
return(n);
}
int GB(int m,int n)
{
int k;
k=m*n/GY(m,n);
return(k);
}
main()
{
int x,y,gys,gbs;
printf(輸入兩數:
);
scanf(%d%d,&x,&y);
gys=GY(x,y);
gbs=GB(x,y);
printf(%d和%d的最大公約數是:%d
,x,y,gys);
printf(%d和%d的最小公倍數是:%d
,x,y,gbs);
}
/*
=========================================================
評:通過獨立寫兩個函數GB—求最小公倍數和GY—求最大公約數,使得程序
非常緊湊並很好維護和檢查。
=========================================================