雨滴在心头


私信TA

用户名:ydzxt

访问量:14554

签 名:

等  级
排  名 3695
经  验 1786
参赛次数 0
文章发表 5
年  龄 0
在职情况 学生
学  校 重庆邮电大学
专  业

  自我简介:

#include<stdio.h>
int main()
{
    int a,b,i,j;//i最大公约数,j最小公倍数 
    scanf("%d %d",&a,&b);
    for (i=(a>b?a:b);i>0;i--){
        if (a%i==0&&b%i==0){
            j=a*b/i;
            printf("%d %d\n",i,j);
            break;    
        }
    }
    return 0;
}

最大公倍数值不会大于a,b最大值;

两个数都能整除它;

最小公倍数等于a*b除以最大公约。

有结果就需要返回,使用break;

 

0.0分

16 人评分

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

编程语言转换

万能编程问答

代码解释器

  评论区

把a>b?a:b改成a<b?a:b效率会更高,你这个相当于枚举算法,只是改良了,可以用辗转相除法,效率会更高
2018-11-13 18:03:24
#include<stdio.h>
int main()
{
	int m,n,i,s;
	scanf("%d,%d",&m,&n);
	for(i=(m>n?m:n);i>0;i--)
	{
		if(m%i==0&&n%i==0) {
	    	s=m*n/i;
		  printf("%d %d\n",i,s);
		   break;	}
	
	}

	return 0;
	
 } 
求大神解惑
2018-11-04 20:24:29
#include<stdio.h>
#include<math.h>
int main()
{
    int a,b,c,m,n;
    scanf("%d%d", &a, &b);
    if(a<b)
    {
        c=a;
        a=b;
        b=c;
    }
    for(n=a%b)
    {
        if(a%n==0&&b%n==0)
        m=a*b/n;
    }
    break;
    printf("%d %d\n",n,m);
    return 0;
}
                                   哪位大神可以帮我看一下错哪吗   谢谢
2018-11-01 15:09:19
思想很好
2018-10-30 17:16:21
真的厉害  佩服
2018-10-24 23:07:54
编的真好
2018-09-23 10:07:22
有帮助,谢谢。
2018-09-12 08:36:04
6666
2018-08-25 15:56:07