找最大公约数

#include <stdio.h>
int main() {int a, b;scanf("%d %d", &a, &b);
int gcd = 1; // 初始化最大公约数为1
int min = (a < b) ? a : b; // 找到a和b中的较小值

// 遍历从2到min的所有可能的公约数
for (int i = 2; i <= min; i++) {
    if ((a % i == 0) && (b % i == 0)) {
        gcd = i; // 更新最大公约数
    }
}

printf("%d与%d的最大公约数是%d\n", a, b, gcd);
return 0;
}

#include <stdio.h>
int main() {int a, b;scanf("%d %d", &a, &b);
int gcd = 1; // 初始化最大公约数为1
int min = (a < b) ? a : b; // 找到a和b中的较小值

int i = 2; // 初始化循环变量
while (i <= min) { // 使用while循环
    if ((a % i == 0) && (b % i == 0)) {
        gcd = i; // 更新最大公约数
    }
    i++; // 更新循环变量
}

printf("%d与%d的最大公约数是%d\n", a, b, gcd);
return 0;

}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务