首页 > 试题广场 >

写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数

[问答题]

写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函

数,并输出结果。两个整数由键盘输入。

推荐
1.
#include<stdio.h>
int main()
{int hcf(int,int);
int lcd(int,int,int);
int u,v,h,l;
scanf("%d,%d",&u,&v);
h=hcf(u,v);
printf("H.C.F=%d\n",h):
1=1cd(u,v,h);
printf("L.C.D=%d\n",1);
return 0;
}
int hcf(int u,int v)
{int t,r;
if(v>u)
{t=u;u=v;v=t}
while((r=u%v)!=0)
{u=v;
v=r;}
return(v);
}
intlcd(int u,int v,int h)
{
return(u*v/h):
}
2.
#include<stdio.h>
int Hcf,Lcd;
int main()
{void hcf(int,int);
void lcd(int,int);
int u,v;
scanf("%d,%d”,&u,&v);
hcf(u,v);
lcd(u,v);
printf("H.C.F=%d\n",Hcf);
printf("L.C.D=%d\n",Lcd);
return 0;
}
void hcf(int u,int v)
{int t,r;
if(v>u)
{t=u;u=v;v=t}
while((r=u%v)!=0)
{u=v;
v=r;
}
Hcf=v;
}
void lcd(int u,int v)
{
Lcd=u*v/Hcf;
}

发表于 2018-03-25 10:38:37 回复(0)
#include<stdio.h>
int max(int a,int b);//函数声明
int min(int a,int b);//函数声明
int main()
{
    int a,b,t,Max,Min;
    scanf("%d%d",&a,&b);
    if(a<b)
    {
        t=a;
        a=b;
        b=t;
    }
    Max=max(a,b);
    Min=min(a,b);
    printf("最大公约数是 %d\n",Max);
    printf("最小公倍数是 %d",Min);
}
//最大公约数
int max(int a,int b)
{
    int r;
        while(r=a%b){
        a=b;
        b=r;
    }    
    return b;
 }
//最小公倍数
int min(int a,int b){
    int r=max(a,b);
    int c=a*b/r;
    return c;
}

    
发表于 2019-11-06 15:23:44 回复(0)