完善程序(第一题):最大公约数与最小公倍数

ks181751 组合题 共 个子题

下面的程序用欧几里得算法(辗转相除法)求两个正整数 a、b 的最大公约数 g 和最小公倍数 l。欧几里得算法的依据是 gcd(x, y) = gcd(y, x mod y),迭代到余数为 0 时,当前被除数即为最大公约数;最小公倍数由 a / g * b 得到。试补全程序。

#include <cstdio>

int main() {
    long long a, b;
    scanf("%lld%lld", &a, &b);
    long long x = a, y = b;
    while (___①___) {
        long long r = ___②___;
        ___③___
        y = r;
    }
    long long g = ___④___;
    printf("%lld %lld\n", ___⑤___, a / g * b);
    return 0;
}

子题 单选题

①处应填( )

A

x != 0

B

y != 0

C

x >= y

D

y >= 0

子题 单选题

②处应填( )

A

y % x

B

x / y

C

x * y

D

x % y

子题 单选题

③处应填( )

A

y = x;

B

x = r;

C

x = y;

D

r = x;

子题 单选题

④处应填( )

A

y

B

a

C

x

D

b

子题 单选题

⑤处应填( )

A

y

B

g

C

a

D

b

正在加载题目数据…
已答 /
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析
讨论
发布
登录后参与讨论 立即登录
发布讨论需先绑定并验证手机号 去绑定手机号
加载中…
我
我
回复 @
回复 @
发送
还没有人讨论,来发表第一条吧