编写一个输入两个正整数,输入他们的最大公约数和最小公倍数的C语言编码
时间: 2024-05-29 10:08:46 浏览: 17
下面是求最大公约数和最小公倍数的C语言代码:
#include <stdio.h>
int gcd(int a, int b); // 求最大公约数
int lcm(int a, int b); // 求最小公倍数
int main()
{
int m, n;
printf("请输入两个正整数:\n");
scanf("%d%d", &m, &n);
printf("它们的最大公约数是:%d\n", gcd(m, n));
printf("它们的最小公倍数是:%d\n", lcm(m, n));
return 0;
}
int gcd(int a, int b)
{
int r; // 余数
while (b != 0)
{
r = a % b;
a = b;
b = r;
}
return a;
}
int lcm(int a, int b)
{
int d = gcd(a, b);
return a / d * b; // 最小公倍数等于两数之积除以最大公约数
}
现在,请问你还有什么问题吗?
相关问题
c语言编写输入两个正整数m和n,求求最大公约数和最小公倍数
这里提供一种使用辗转相除法求解最大公约数和最小公倍数的C语言代码:
```c
#include <stdio.h>
int main() {
int m, n, r, gcd, lcm;
printf("请输入两个正整数:\n");
scanf("%d%d", &m, &n);
int a = m, b = n;
while (b != 0) {
r = a % b;
a = b;
b = r;
}
gcd = a;
lcm = m * n / gcd;
printf("最大公约数为:%d\n", gcd);
printf("最小公倍数为:%d\n", lcm);
return 0;
}
```
代码中使用了辗转相除法求解最大公约数,最小公倍数则可以通过公式m*n/d计算得出。同时,为了保留输入的原始值,代码中使用了两个变量a和b来进行计算。
输入两个正整数,求最大公约数和最小公倍数c语言
这个问题可以用两种方法来解决。第一种方法是使用全局变量,将最大公约数和最小公倍数设为全局变量,在主函数中输出它们的值。第二种方法是不使用全局变量,最大公约数和最小公倍数由被调模块返回值。具体思路如下:
方法一:
```c
#include <stdio.h>
int gcd, lcm; // 全局变量
int GCD(int x, int y) { // 求最大公约数
int r;
while (y > 0) {
r = x % y;
x = y;
y = r;
}
return x;
}
int LCM(int x, int y) { // 求最小公倍数
gcd = GCD(x, y);
lcm = x * y / gcd; return lcm;
}
int main() {
int x, y;
printf("请输入两个正整数:");
scanf("%d %d", &x, &y);
LCM(x, y);
printf("最大公约数为:%d\n", gcd);
printf("最小公倍数为:%d\n", lcm);
return 0;
}
```
方法二:
```c
#include <stdio.h>
int GCD(int x, int y) { // 求最大公约数
int r;
while (y > 0) {
r = x % y;
x = y;
y = r;
}
return x;
}
int LCM(int x, int y) { // 求最小公倍数
int gcd = GCD(x, y);
int lcm = x * y / gcd;
return lcm;
}
int main() {
int x, y, gcd, lcm;
printf("请输入两个正整数:");
scanf("%d %d", &x, &y);
gcd = GCD(x, y);
lcm = LCM(x, y);
printf("最大公约数为:%d\n", gcd);
printf("最小公倍数为:%d\n", lcm);
return 0;
}
```
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)