#include <iostream>
using namespace std;
int main()
{
int a,b,r;
cin>>a>>b;
while(a%b!=0)
{
r=a%b;
a=b;
b=r;
}
cout<<"最大公约数为"<<b<<endl;
return 0;
}
网络摘录的一个方法如下:
int yue;
for(int i=a;i>=1;i--)//从高到低循环,确保求得的是最大公约数(无需判断a,b的大小)
{
if(a%i==0 && b%i==0)
//判断是否可以同时整除
{
yue=i;
break; //跳出循环
}
}