c语言求最大公倍数函数 c语言求最大公倍数和最小公倍数

编程求两个整数的最大公约数和最小公倍数。

#includestdio.h

成都创新互联是一家专注于网站制作、做网站与策划设计,梅州网站建设哪家好?成都创新互联做网站,专注于网站建设十余年,网设计领域的专业建站公司;建站业务涵盖:梅州等地区。梅州做网站价格咨询:13518219792

int func1(int a,int b)

{

int r;

while(b0)

{

r=a%b;

a=b;

b=r;

}

return a;

}

int func2(int a,int b,int g)

{

return a*b/g;

}

int main()

{

int a,b,c,d;

scanf("%d%d",a,b);

c=func1(a,b);//最大公约数

d=func2(a,b,c);//最小公倍数

printf("%d\n%d\n",c,d);

}

C语言求最大公约数和公倍数

float y=34.0000;

printf("%d\n",y);

这个的输出会是0,float输出到%d上会是0.

所以最后一行你要改为

printf("%d %d\n",z,(int)y);

编写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果,两个整数由

#includelt;stdio.hgt;//0和任意的一个数的最大公约数就是那个数(最小公倍数就是0)

int yue(int x,int y)

{

int m,t;

if(ygt;x)

{

t=x;//将x与y的值交换

x=y;

y=t;

}

while(y!=0)

{

m=x%y;

x=y;

y=m;

}

return x;

}

int bei(int x,int y,int p)

{

return(x*y/p);

}

int main()

{

int yue(int,int);

int bei(int,int,int);

int p,q,a,b;

printf("请输入两个整数:");

scanf("%d%d",a,b);

q=yue(a,b);

p=bei(a,b,q);//最小公倍数=两数的乘积除以它们的最大公约数

printf("最大公约数是:%d\n最小公倍数是:%d\n",q,p);

}

扩展资料:

#includelt;iostreamgt;

using namespace std;

int i;

int max(int a,int b)

{

//coutlt;lt;"max";

int s;s=i=2;

//coutlt;lt;slt;lt;endl;

if(agt;b)

{

i=b;

}

else

i=a;

do{

if(a%i==0b%i==0)

{

//coutlt;lt;"do里面的s!"lt;lt;slt;lt;endl;

//coutlt;lt;"do里面的i!"lt;lt;ilt;lt;endl;

s=i;

break;

}

i--;

}while(ilt;ailt;b);

//coutlt;lt;"end的s!"lt;lt;slt;lt;endl;

//coutlt;lt;"end的i!"lt;lt;ilt;lt;endl;

return s;

}

int min(int a,int b)

{

//coutlt;lt;"min";

int s;s=1;i=2;

do{

if(i%a==0i%b==0)

{

//coutlt;lt;"do里面的s!"lt;lt;slt;lt;endl;

//coutlt;lt;"do里面的i!"lt;lt;ilt;lt;endl;

s=i;break;

}

i++;

}while(ilt;=a*b);

//coutlt;lt;"end的s!"lt;lt;slt;lt;endl;

//coutlt;lt;"end的i!"lt;lt;ilt;lt;endl;

return s;

}

int main()

{

int x,y,m,n;

cingt;gt;xgt;gt;y;

m=max(x,y);n=min(x,y);

coutlt;lt;mlt;lt;""lt;lt;n;

}

c语言求公约公倍数

#include  stdio.h

long long int gongyue(long long int m,long long int n){

long long int c;

if(m2 || n2) return  44;

if(mn){

c=m%n;

while(c0){

m=n;

n=c;

c=m % n;

}

}

else{

c=n % m;

while(c0){

n=m;

m=c;

c=n % m;

}

}

m=n;

return m;

}

long long int gongbei(long long int m,long long int n){

return m/gongyue(m,n)*n;

}

int main(){

long long int a,b,c,m,n;

printf("请输两个正整数a,b:");

scanf("%lld%lld",a,b);

m=gongyue(a,b);

n=gongbei(a,b);

printf("最大公约数%lld,最小公倍数%lld\n",m,n);

return 0;

}

C语言怎么求多个数的最小公倍数与最大公约数

两个正整数的最大公约数和最小公倍数的求法尼会吗?多个数也差不多,也就是这N个数从头开始先求前两个数的最大公约数(设为n1),然后n1再与第三个数求出其最大公约数(设为n2),n2再与第四个数求出最大公约数……直至求出所有数的最大公约数。这些数的最小公倍数就是这些数的成绩再除以这些数的最大公约数。


名称栏目:c语言求最大公倍数函数 c语言求最大公倍数和最小公倍数
URL网址:http://pwwzsj.com/article/docoseh.html