第一种方法:概念法
若两个数有最大公约数那么该数肯定大于等于1小于等于两个数中较小的数
那么取两个数中较小的数赋值给变量min
所以,若min大于等于1则执行循环
如果两个数a和b都和min取模且都等于0那么说明min就是两个数的最大公约数
那么直接break跳出循环
如果不满足条件那么min自减直到达到条件
#include<stdio.h>
#include<stdlib.h>
#pragma warning(disable :4996)
int main()
{
int a, b;
printf("输入a和b的值");
scanf("%d %d", &a, &b);
int min = a > b ? b : a;
while (min >= 1)
{
if (a%min == 0 && b%min == 0)
{
break;