c语言编程写两个函数,分别求两个正数的最大公约数和最小公倍数

c语言编程写两个函数,分别求两个正数的最大公约数和最小公倍数。用主函数调用这两个函数并输出结果。两个正数由键盘输入

#include <stdio.h>

//求a和b最大公约数:
int yue(int a,int b)
{
int k=1;
int t=a>b?b:a;//a大取b,否则取a
for(int i=1;i<=t;i++)
{
if((a%i==0)&&(b%i==0)) k=i;
else continue;
}
return k;//返回最大公约数
}

//求a和b的最小公倍数,参数c传递的是a和b的最大公约数
int bei(int a,int b,int c)
{
return (a*b)/c;
}
void main()
{
int a,b;

printf("请按从大到小的顺序输入2个要求值的数\n");
scanf("%d%d",&a,&b);
printf("两个数的最大公约数是%d\n",yue(a,b));
printf("两个数的最小公倍数是%d\n",bei(a,b,yue(a,b)));
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-05-20
这个简单用main函数就行了,,看我帮你写,保证最准确!
main()
{
int num1,num2,temp;
int a=0,b=0; //用int a,b;不太好,没有初始化。
printf("请输入两个数:");
scanf("%d%d",&num1,&num2);
if(num1<num2) //保证了后面a的数比b大
{
temp=num1;
num1=num2;
num2=temp;
}
a=num1;
b=num2;
while(b!=0)
{
temp=a%b;
a=b;
b=temp;//使用了辗转相除法
}
printf("最大公约数是:%d\n",a);
prinft("最小公倍数是:%d\n",num1*num2/a);

}
程序很简单,望自己多想想算法,加油!!!
第2个回答  2008-05-20
#include<iostream>
using namespace std;
int funs1(int a,int b) //求用辗转相除法最大公约数
{
if(a<b) {int m=a;a=b;b=m;} //a存放大数,b存放小数
while(a%b!=0)
{ int n=b;
b=a%n; //b存放a/b的余数
a=n; //a存放除数
}
return b; //当a/b的余数为零时,除数b就是要求的最大公约数
}

int funs2(int a,int b) //求a与b的最小公倍数
{
return (a*b)/funs1(a,b);
}

void main()
{
int a,b;
cin>>a>>b;
cout<<a<<' '<<b<<"的最大公约数是:"<<funs1(a,b)<<endl;
cout<<a<<' '<<b<<"的最小公倍数是:"<<funs2(a,b)<<endl;
}
第3个回答  2008-05-21
#include<stdio.h>
main()
{
int a,b,shu1,shu2,c;
printf("请输入两个数!\n");
scanf("%d%d",&shu1,&shu2);
if(shu1<shu2)
{
c=shu1;
shu1=shu2;
shu2=c;
}
a=shu1,b=shu2;
while(b!=0)
{
c=a%b;
a=b;
b=c;
}
printf("最大公约数为:%d\n",a);
printf("最小公倍数为:%d\n",shu1*shu2/a);
}

就是一个简单的碾除法。这是一个很经典的问题。
第4个回答  2019-01-02
#include
//求a和b最大公约数:
int
yue(int
a,int
b)
{
int
k=1;
int
t=a>b?b:a;//a大取b,否则取a
for(int
i=1;i<=t;i++)
{
if((a%i==0)&&(b%i==0))
k=i;
else
continue;
}
return
k;//返回最大公约数
}
...展开#include
//求a和b最大公约数:
int
yue(int
a,int
b)
{
int
k=1;
int
t=a>b?b:a;//a大取b,否则取a
for(int
i=1;i<=t;i++)
{
if((a%i==0)&&(b%i==0))
k=i;
else
continue;
}
return
k;//返回最大公约数
}
//求a和b的最小公倍数,参数c传递的是a和b的最大公约数
int
bei(int
a,int
b,int
c)
{
return
(a*b)/c;
}
void
main()
{
int
a,b;
printf("请按从大到小的顺序输入2个要求值的数\n");
scanf("%d%d",&a,&b);
printf("两个数的最大公约数是%d\n",yue(a,b));
printf("两个数的最小公倍数是%d\n",bei(a,b,yue(a,b)));
}收起

C语言,编写两个函数,分别求两个正整数的最大公约数和最小公倍数,结果...
int gcd(int x,int y)\/\/最大公约数 { if (y==0)return x;else return gcd(y,x%y);} int lcd (int x,int y,int z)\/\/最小公倍数 { return x*y\/z;} int main(){ int a,b,c;scanf("%d%d",&b,&c);int d=gcd(b,c);printf("%d %d",d,lcd(b,c,d));return 0;} ...

...分别求出两个整数的最大公约数和最小公倍数。用主函数调用这两个函数...
printf("最大公约数是:%d\\n最小公倍数是:%d\\n",q,p);}

求c语言编写~~编写两个函数,分别求两个整数的最大公约数和最小公倍...
printf("最大公约数是:%d\\n最小公倍数是:%d\\n",q,p);}

...分别实现求两个整数的最大公约数和最小公倍数,并用主函数调用这两...
int HCF(int x,int y);\/\/定义最大公约数函数 int LCM(int p,int q);\/\/定义最小公倍数函数 int main(){ int a,b,hcf,lcm;scanf("%d%d",&a,&b);\/\/输入两个整数 hcf=HCF(a,b);\/\/调用最大公约数函数 lcm=LCM(a,b);\/\/调用最小公倍数函数 printf("HCF is%d LCM is%d\\n",...

C语言函数编写,求两个整数的最大公约数和最小公倍数
编写该程序的整体思路:分别定义最大公约数函数和最小公倍数函数,然后再main函数里面调用它。C语言实现代码如下:include<stdio.h> include<math.h> int fun_gy(int,int); \/\/声明最大公约数函数 int fun_gb(int,int); \/\/声明最小公倍数函数 main(){ int a,b,gy,gb;printf("输入两个...

...分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数...
include<stdio.h>\/\/0和任意的一个数的最大公约数就是那个数(最小公倍数就是0)int yue(int x,int y){ int m,t;if(y>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 ...

写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两...
b就是最大公约数 a*b除以a,b的最大公约数就是他们的最小公倍数 include<stdio.h> int gcd(int n, int m){ if (m==0)return n;else return gcd( m, n % m );} int bei( int m,int n ){ return m * n\/ gcd( m, n) ;} void main(){ int a,b;printf("输入两个数...

c语言编程:输入两个正整数,求最大公约数和最小公倍数
printf("它们的最大公约数为:%d\\n",n);printf("它们的最小公约数为:%d\\n",p\/n);return 0;} 方法二、\/\/穷举法解两个数的最大公约数和最小公倍数 void exp(int num1,int num2){ int x,y,i;x=num1;y=num2;int max=0;\/\/最大公约数 for(i=1;i<=num1;i++)if(num1%i==0...

C语言编写两个函数,分别求其最大公约数和最小公倍数。并在主函数中输 ...
i,j);printf("最大公约数为%d\\n",k);printf("最大公倍数为%d\\n",m);} int gy(int a,int b){ int temp,r;if(a

C语言怎样求两个整数的最大公约数和最小公倍数
1、新建一个工程和.c文件 ,输入头文件和主函数。2、定义变量类型。3、接下来需要输入a和b。4、用一个if 语句去判断这两个数是否大于1。5、用while 语句去求得最大公倍数和最小公约数。6、输出最大公约数和最小公倍数。7、编译,运行得到最后的结果。

相似回答