编一个函数GCD,求两个数的最大公约数.
编一个函数GCD,求两个数的最大公约数。主函数输入两个正整数m和n,调用GCD,求出m和n的最大公约数和最小公倍数,并输出。...
编一个函数GCD,求两个数的最大公约数。主函数输入两个正整数m和n,调用GCD,求出m和n的最大公约数和最小公倍数,并输出。
展开
展开全部
#include<stdio.h>
/*
编一个函数GCD,求两个数的最大公约数。
主函数输入两个正整数m和n,调用GCD,
求出m和n的最大公约数和最小公倍数,并输出。
*/
void GCD(int m,int n)
{
int c1,d1;
c1=(m<n)?m:n;
if(m!=n)
{
for(d1=c1;d1>1;d1--)
{if(m%d1==0&&n%d1==0)break;}
if(d1==1)
printf("最大公约数= 1 ,最小公倍数= %d",m*n);
else
printf("最大公约数= %d ,最小公倍数= %d",d1,m*n/d1);
}
else
{
printf("最大公约数= 1 ,最小公倍数= %d",n);
}
}
void main()
{
int m,n;
printf("input m: ");
scanf("%d",&m);
printf("input n: ");
scanf("%d",&n);
GCD(m,n);
printf("\n");
}
/*
编一个函数GCD,求两个数的最大公约数。
主函数输入两个正整数m和n,调用GCD,
求出m和n的最大公约数和最小公倍数,并输出。
*/
void GCD(int m,int n)
{
int c1,d1;
c1=(m<n)?m:n;
if(m!=n)
{
for(d1=c1;d1>1;d1--)
{if(m%d1==0&&n%d1==0)break;}
if(d1==1)
printf("最大公约数= 1 ,最小公倍数= %d",m*n);
else
printf("最大公约数= %d ,最小公倍数= %d",d1,m*n/d1);
}
else
{
printf("最大公约数= 1 ,最小公倍数= %d",n);
}
}
void main()
{
int m,n;
printf("input m: ");
scanf("%d",&m);
printf("input n: ");
scanf("%d",&n);
GCD(m,n);
printf("\n");
}
展开全部
#include <stdio.h>
int gcd(int a,int b)//求最大公约数
{
if(a<b)
return gcd(b,a);
if(a%b==0)
return b;
return gcd(b,a%b);
}
int main()
{
int a,b;
scanf("%d%d",&a,&b);
printf("最大公约数:%d\n",gcd(a,b));
printf("最小公倍数:%d\n",a*b/gcd(a,b));
return 0;
}
int gcd(int a,int b)//求最大公约数
{
if(a<b)
return gcd(b,a);
if(a%b==0)
return b;
return gcd(b,a%b);
}
int main()
{
int a,b;
scanf("%d%d",&a,&b);
printf("最大公约数:%d\n",gcd(a,b));
printf("最小公倍数:%d\n",a*b/gcd(a,b));
return 0;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询