卋平


私信TA

用户名:uq_65495316641

访问量:160

签 名:

你的草原你的码,你想咋耍就咋耍

等  级
排  名 26546
经  验 521
参赛次数 0
文章发表 1
年  龄 20
在职情况 学生
学  校 WUT
专  业 电子信息工程

  自我简介:

TA的其他文章

解题思路:优先比较输入的两个数的大小,从而可以比较方便地开始进行循环,大大减少了两个数的比较相关代码行数。


注意事项:两个for循环第一次找到最大公约数和最小公倍数之后要有break退出循环。

参考代码:

#include<stdio.h>
int main()
{
    int x, y, max, min;
    scanf("%d%d", &x, &y);
    min = x < y ? x : y;
    max = x > y ? x : y;
    for (int i = min; i > 0; i--) {
        if ((x % i == 0) && (y % i == 0)) {
            printf("%d ", i);
            break;
        }
    }
    for (int j = max; j < x * y + 1; j++) {
        if ((j % x == 0) && (j % y == 0)) {
            printf("%d", j);
            break;
        }
    }
    return 0;
}


 

0.0分

1 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答

代码解释器

  评论区