问:求两个数最大公约数,最小公倍数
解题思路:
我们不断地尝试会发现最大公约数,最小公倍数的规律:两个数的乘积 / 最大公约数 = 最小公倍数
因此,我们的代码有如下设计过程:
代码示例:
#define _CRT_SECURE_NO_WARNINGS #include<stdlib.h> #include<stdio.h> int main() { int a = 0, b = 0; scanf("%d %d",&a,&b); int temp; int i = 0; //求最大公约数 if (a > b) { temp = b; } else { temp = a; } for (i = temp; i >= 1;i--) { if ((a%i==0)&&(b%i==0)) { printf("最大公约数:%d\n", i); break; } } //最小公倍数 int gy = a*b / i; printf("最大公倍数:%d", gy); system("pause"); return 0; }