21xrx.com
2025-04-18 17:08:52 Friday
文章检索 我的文章 写文章
最小公倍数和最大公约数C语言函数的实现
2023-06-15 17:19:13 深夜i     18     0
最小公倍数 最大公约数 C语言函数

在算法和程序设计中,最小公倍数和最大公约数是基础而重要的概念。为了方便调用和使用,一些常见编程语言都自带了这两个函数。今天我们讨论一下如何在C语言中实现最小公倍数和最大公约数函数。

首先,最大公约数的定义就是两个数之间能够整除的最大整数。实现代码如下:

int gcd(int a, int b) {
  if (a % b == 0)
    return b;
  
  return gcd(b, a % b);
}

解释一下,这里的思路是递归。当a能够被整除,那么当前的b就是最大公约数;否则,将b重新赋值为a%b,继续递归调用gcd函数。

接下来,最小公倍数的定义是能够同时整除两个数的最小整数。实现代码如下:

int lcm(int a, int b) {
  int temp = gcd(a, b);
  return a * b / temp;
}

解释一下,这里的思路是先求出最大公约数temp,然后应用公式lcm = a * b / gcd(a, b)来求得最小公倍数。

最后给出三个

  
  

评论区