在两个数取出较小的那个数然后从这个数到0依次循环遍历,即可得到最大公约数。需考虑当最后遍历到1时说明这两个数互质。
代码如下:
int main()
{
int a, b;
scanf("%d%d", &a, &b);
int smaller = a < b ? a : b;
int i;
int max = 0;
for (i = 1; i <= smaller; i++)
{
if (a%i == 0 && b%i == 0)
{
max = i;
}
}
if (max == 1)
{
printf(“两数互质\n”);
system(“pause”);
return 0;
}
printf("%d和%d的最大公约数为%d\n",a,b,max);
system(“pause”);
return 0;
}
输出结果:
求两个数的最大公约数
最新推荐文章于 2022-10-28 15:19:46 发布