输入两个正整数辗转相除法计算并输出他们最大公约数,借助最大公约数,计算输出最小公倍数

用while循环语句实现... 用while循环语句实现 展开
 我来答
fallx
2018-05-13 · TA获得超过5486个赞
知道大有可为答主
回答量:2321
采纳率:73%
帮助的人:730万
展开全部
#include <stdio.h> 

int gcd(int a,int b);//最小公约数
int lcd(int a,int b);//最小公倍数

int main()
{
int a,b,c,g;

printf("输入两个整数:"); 
scanf("%d %d",&a,&b);
 if(a!=0&&b!=0)
 {
  c=gcd(a,b);
g=lcd(a,b);
printf("最大公约数:%d\n",c);
printf("最小公倍数:%d\n",g);
}
else
{
printf("Input error!\n");
}
return 0;
}

int gcd(int a,int b)
{
 int t=0;
 while(b)
  {
  t=a%b;
  if(t==0)
  break;
  a=b;
  b=t;
  } 
  return b;
}

int lcd(int a,int b)
{
return a*b/gcd(a,b);
}

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式