求100000以内的两个正整数的公约数及最大公约数C语言代码
时间: 2023-04-05 21:01:23 浏览: 103
以下是求100000以内的两个正整数的公约数及最大公约数的C语言代码:
#include <stdio.h>
int main() {
int num1, num2, i, gcd = 1;
printf("请输入两个正整数:\n");
scanf("%d %d", &num1, &num2);
for (i = 1; i <= num1 && i <= num2; ++i) {
// 判断i是否为num1和num2的公约数
if (num1 % i == 0 && num2 % i == 0) {
printf("%d是%d和%d的公约数\n", i, num1, num2);
gcd = i;
}
}
printf("%d和%d的最大公约数为%d\n", num1, num2, gcd);
return 0;
}
相关问题
两个正整数的最大公约数代码c语言
下面是用C语言实现求两个正整数的最大公约数的代码:
```
#include <stdio.h>
unsigned int GCD(unsigned int M, unsigned int N);
int main(void) {
unsigned long int m, n;
scanf("%lu %lu", &m, &n);
printf("%lu\n", GCD(m, n));
return 0;
}
unsigned int GCD(unsigned int M, unsigned int N) {
unsigned int rem;
while (N > 0) {
rem = M % N;
M = N;
N = rem;
}
return M;
}
```
这个代码使用了欧几里得算法,也称为辗转相除法,通过不断地取模运算,将两个数的大小关系转化为两个数的余数的大小关系,最终得到它们的最大公约数。
求两个正整数最大公约数和最小公倍数c语言
求两个正整数的最大公约数和最小公倍数可以使用辗转相除法。具体思路是从两个数中选一个数,从这个数开始,逐步减一,当能够同时被两个数整除时,结束循环,即为最大公约数。最小公倍数等于两个数的乘积除以最大公约数。在C语言中,可以使用函数来实现这个过程,也可以在主函数中直接编写代码实现。如果使用函数,可以将求最大公约数和最小公倍数的过程分别封装成两个函数,然后在主函数中调用这两个函数即可。如果不使用函数,可以直接在主函数中编写代码实现。
阅读全文