用C语言写一个求两个数有无相等的因子
时间: 2023-04-09 12:04:41 浏览: 118
两个数相加c语言
可以使用辗转相除法来判断两个数是否有相等的因子,具体实现如下:
```c
#include <stdio.h>
int gcd(int a, int b) {
if (b == 0) {
return a;
}
return gcd(b, a % b);
}
int has_common_factor(int a, int b) {
int g = gcd(a, b);
return g > 1;
}
int main() {
int a, b;
printf("请输入两个整数:");
scanf("%d %d", &a, &b);
if (has_common_factor(a, b)) {
printf("%d 和 %d 有相等的因子\n", a, b);
} else {
printf("%d 和 %d 没有相等的因子\n", a, b);
}
return 0;
}
```
这段代码中,`gcd` 函数用于求两个数的最大公约数,`has_common_factor` 函数用于判断两个数是否有相等的因子。在 `main` 函数中,先读入两个整数,然后调用 `has_common_factor` 函数判断它们是否有相等的因子,最后输出结果。
阅读全文