如例A,B两个之间求最小公倍数,如果A,B之间不能整除,就拿A或B与自身相加,直到加到能与另一个数能整除,那么加出来的那个数就是A,B的最小公倍数。
而A,B之间求最大公约数则是在求出最小公倍数后,(A*B)/最小公倍数 就是最大公因数。
代码如下
#include<stdio.h> int main(void) { int a,b,x,y; do{ printf("Input a:"); scanf("%d",&a); printf("Input b:"); scanf("%d",&b); }while(a<0||b<0); x=a; while(x%b!=0) x=x+a; y=(a*b)/x; printf(" 最小公倍数是 %d,最大公约数是 %d\n",x,y); return 0; }