求C语言程序:求两个整数的最大公约数和最小公倍数。

用一个函数求最大公约数,用另一个函数根据求出的最大公约数求最小公倍数。要用函数表达,谢了... 用一个函数求最大公约数,用另一个函数根据求出的最大公约数求最小公倍数。
要用函数表达,谢了
展开
t415422663
2011-05-02 · TA获得超过437个赞
知道小有建树答主
回答量:233
采纳率:0%
帮助的人:220万
展开全部
#include <stdio.h>
int fun(int m,int n)/*求最大公约数*/
{
int t;
if(n>m)
{
t=n;
n=m;
m=t;
}
t=m%n;
while(t)
{
m=n;
n=t;
t=m%n;
}
return n;
}
void main()
{
int m,n,gcd,lcm;/*gcd是最大公约数,lcm是最小公倍数*/
printf ("Input two integer m,n:");
scanf("%d%d",&m,&n);
gcd=fun(m,n);
lcm=m*n/gcd;/*求最小公倍数*/
printf("gcd=%d\n",gcd);
printf("lcm=%d\n",lcm);
}
傷感小杰
2011-04-29 · 超过19用户采纳过TA的回答
知道答主
回答量:99
采纳率:0%
帮助的人:45.5万
展开全部
#include <stdio.h>
void main()
{
int m,n,r,t;
printf ("请输入两个正整数m,n:");
scanf("%d%d",&m,&n);
if(n>m)
{
t=n;
n=m;
m=t;
}
r=m*n;
t=m%n;
while(t)
{
m=n;
n=t;
t=m%n;
}
printf("他们的最大公约数:%d \n",n);
printf("他们的最小公倍数:%d \n",r/n);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tidecao2006
2011-05-02 · TA获得超过1229个赞
知道小有建树答主
回答量:842
采纳率:0%
帮助的人:793万
展开全部
用欧几里德辗转相除法:
#include <stdio.h>

int dy(int a, int b) //公约数
{
return (!b)? a : dy(b, a % b);
}

int db(int a, int b) //公倍数
{
return a * b / dy(a, b);
}

void main()
{
int a, b;

scanf("%d %d", &a, &b);
printf("最大公约数:%d\n最大公倍数%d\n", dy(a, b), db(a, b));
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-04-27
展开全部
#include<stdio.h>
int main()
{
int m,n,t,i;
scanf("%d%d",&m,&n);
if(m>n)
{
t=n;
n=m;
m=t;
}
for(i=m;i>=2;i--)
if(m%i==0&&n%i==0)
printf("%d,%d\n",i,m*n/i);
return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式