维生素k4治疗银屑病:C 的问题

来源:百度文库 编辑:高校问答 时间:2024/04/29 22:39:49
输入两个正整数m和n,求其最大公约数和最小公倍数。
要求用循环语句解决
俺是新人,俺不会

#include <stdio.h>
void main()
{
int p,r,n,m,temp;
printf("input two date:");
scanf("%d,%d",&n,&m);
if (n<m)
{
temp=n;
n=m;
m=temp;
}
p=n*m;
while (m!=0)
{
r=n%m;
n=m;
m=r;
}
printf("最大公约数是:%d\n",n);
printf("最小公倍数是:%d\n",p/n);
}

#include <stdio.h>

int Gcd(long a,long b)
{
long c;
if(b==0) c=a;
else c=Gcd(b,a%b);
return c;
};

int main()
{
int m, n, gcd, lcm;

scanf("%d%d",&m,&n);

gcd = Gcd(m,n);
lcm = m*n/gcd;

printf("The gcd is: %d !\nThe lcm is: %d !\n",gcd, lcm);

return 0;
}

辗转相除!

这是典型的算法,展转相除法,一般的书上都有.

9494,书上都有还问...

小样,是老师交给你的作业吧,不好好看书,这么简单的东西也来问别人!