今日学习笔记:辗转相除法
在每一轮循环中,计算a % b得到余数;
将b的值赋给a,将余数赋给b;
当b变为 0 时,循环结束,此时的a就是最大公约数。
(遍历会超时)
#include<stdio.h>
int main()
{
int a,b,c;
scanf("%d %d",&a,&b);
if (a<b) {
c=a;
a=b;
b=c;
}
while (b) {
c=a%b;
a=b;
b=c;
}
printf("%d\n",a);
return 0;
}

京公网安备 11010502036488号