用C语言实现最大公因数与最小公倍数

一、最大公因数
引例:
24与18的最大公因数:
24÷18=1......6
18÷6=6......0


则6是24与18的最大公因数。【思想:辗转相除法】
代码如下:
test.c

#include int main() { int a = 24; int b = 18; int c = 0; while (c=a%b)//若a模b不余0,则继续循环,继续往下辗转相除 { a = b; //用原来的b继续模上上一次的余数 b = c; //即这两步的目的是形成18÷6 } printf("%d\n", b); system("pause"); return 0; }

运行结果:
用C语言实现最大公因数与最小公倍数
文章图片



二、最小公倍数
引例:
4与6的最大公因数:2

4与6的最小公倍数:
4×6÷2=12
则12是4与6的最大公因数。【思想:两数之积与两数的最大公因数的商】

代码如下:
test.c
#include int main() { int a = 4; int b = 6; int c = 0; int d = 0; d = a*b; while (c = a%b) { a = b; b = c; } d = d / b; printf("%d\n", d); system("pause"); return 0; }

运行结果如下:
【用C语言实现最大公因数与最小公倍数】用C语言实现最大公因数与最小公倍数
文章图片



    推荐阅读