解题思路:辗转相除法求最大公约数,再用两个数的积除以最大公约数得到最小公倍数
注意事项:
参考代码:
#include<stdio.h>
int yue(int x,int y)
{
int t,temp;
if(x<y) //余数不会大于除数,所以交换写在循环外面
{
temp=x;
x=y;
y=temp;
}
while((t=x%y)!=0) //将除数变为被除数,余数变为除数
{
x=y;
y=t;
}
return y;
}
int bei(int m,int n)
{
int c,bb;
c=yue(m,n);
bb=m*n/c;
return bb;
}
int main()
{
int a,b,ys,bs;
scanf("%d%d",&a,&b);
ys=yue(a,b);
bs=bei(a,b);
printf("%d %d\n",ys,bs);
return 0;
}
0.0分
0 人评分
C二级辅导-进制转换 (C语言代码)浏览:657 |
C语言训练-素数问题 (C语言代码)浏览:1696 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:543 |
兰顿蚂蚁 (C++代码)浏览:1225 |
C语言程序设计教程(第三版)课后习题6.9 (C语言代码)浏览:603 |
printf基础练习2 (有点不明白)浏览:887 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:723 |
蛇行矩阵 (C语言代码)浏览:606 |
用筛法求之N内的素数。 (C语言代码)浏览:711 |
C语言训练-数字母 (C语言代码)浏览:648 |