您的位置:首页 > 编程语言 > C语言/C++

用C语言求两个数的最大公约数和最小公倍数

2012-02-24 19:23 316 查看
求最大公约数,就是求较小的一个数的约数同时也能被较大的数整除,把他求到最大就可以了。

求最小公倍数,就是求较大的一个数的倍数(同时也能整除较小的数),求最小的。

1、

# include <stdio.h>

int  main(void)
{
int x, y,temp;
int r;
printf("请输入两个正整数:\n");
scanf("%d %d", &num1, &num2);
r = num1 % num2;
temp = num2;
while(r!=0)
{
num1 = num2;
num2 = r;
r = num1 % num2;
}
printf("它们的最大公约数为:%d\n", num2);
printf("它们的最小公倍数为:%d\n", num1*temp/num2);

return 0;
}


2、

# include <stdio.h>

int  main(void)
{
int x, y, num1, num2, temp;

printf("请输入两个正整数:\n");
scanf("%d %d", &num1, &num2);
if(num1 < num2)
{
temp = num1;
num1 = num2;
num2 = temp;
}
x = num1;
y = num2;
while(y != 0)
{
temp = x%y;
x = y;
y = temp;
}
printf("它们的最大公约数为:%d\n", x);
printf("它们的最小公倍数为:%d\n", num1*num2/x);

return 0;
}


3、

4、
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: