马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 划句顾 于 2021-6-28 10:09 编辑
用辗转相除法求两个数的最大公约数:
代码如下:#include<stdio.h>
int main()
{
int m,n,u,v,k,r;
printf("请分别输入u,v:"); //u>0,v>0
scanf("%d %d",&u,&v);
m= u;
n=v;
while(v!=0)
{
r = u % v;
u = v;
v = r;
}
k = (m*n)/u;
printf("最大公约数为:%d\n",u);
printf("最小公倍数为:%d\n",k);
return 0;
}
运行结果:
无论怎么u和v哪个大,输出结果都一样#include<stdio.h>
int main()
{
int m,n,u,v,k,r,i=0;
while(i<2)
{
printf("请分别输入u,v:"); //u>0,v>0
scanf("%d %d",&u,&v);
i++;
m= u;
n=v;
while(v!=0)
{
r = u % v;
u = v;
v = r;
}
k = (m*n)/u;
printf("最大公约数为:%d\n",u);
printf("最小公倍数为:%d\n",k);
}
return 0;
}
运行结果:
|