雨滴在心头


私信TA

用户名:ydzxt

访问量:14552

签 名:

等  级
排  名 3682
经  验 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 人评分

  评论区

#include<stdio.h>
main()
{
	int m,n,i;
	int a,b,c;
	scanf("%d %d",&m,&n);
    if(m>n){
	for(i=n;a!=0||b!=0;i--){
		a=n%i;
		b=m%i;
		c=m*n/i;
		}
	printf("%d %d",i+1,c);
	}	
	else{
		for(i=m;a!=0||b!=0;i--){
		a=m%i;
		b=n%i;
		c=m*n/i;
		}
	printf("%d %d",i+1,c);
	}
}

快帮我看看哪里错了,它说答案错误,没看出来那个答案错了
2019-04-21 13:44:51
#include<stdio.h>
int main()
{
    int a,b,c,d,e,t;
    scanf("%d%d",&a,&b);
    c=a;
    d=b;
    if(a<b)
    {e=a;
    a=b;
    b=e;}
    do{
        t=a%b;
        a=b;
        b=t;
    }while(t!=0);
    e=c*d/a;
    printf("%d ",a);
    printf("%d\n",e);
    return 0;
}
2019-03-15 11:14:04
int main()
{
	int m, n;
	scanf("%d%d", &m, &n);
	for (unsigned y = m; y >= 1; y--) {
		if (m%y == 0 && n%y == 0) {
			printf("%d", y);
		}
	}
	for (unsigned x = m; x <= n * m; x++) {
		if (x%m == 0 && x%n == 0) {
			printf("%d", x);
		}
	}
	return 0;
}
为啥我这样不行,哭了。
2019-03-07 17:53:04
为啥输6 12的输出是6 12?
(⊙﹏⊙)
2019-03-02 10:20:27
#include <stdio.h>
int main()
{
  int a,b;
  int factor;//假设a和b的最大公约数为factor;
  int multiple;//假设a和b的最小公倍数为multiple;
  int i=1;
  scanf("%d %d",&a,&b);
  for(i=1 ; i<=a;i++ ){
    if(a%i== 0 && b%i==0){
      factor =i;
    }
  };
  multiple=(a*b)/factor;
  printf("%d %d",factor,multiple);
  
  return 0;
}
2019-02-25 23:03:10
#include<stdio.h>
int main()
{
	int m,n;
	scanf("%d%d",&m,&n);
	int t;
	t=1;
	while(t>0)
	{
		if(m%t==0&&n%t==0)
		break;
		t++;
	}
	int d;
	d=1;
	while(d>0)
	{
		if(d%m==0&&d%n==0)
			break;
		d++;
	}
	printf("%d %d\n",t,d);
	return 0;
}
上机运算是对的,但就是过不了是为什么?
2019-02-18 17:57:57
#include <stdio.h>
void swa(int *x,int *y)//使m>n
{
	int *temp;
	if (*x<*y)
	{
   
	  temp=x;
	  x=y;
	  y=temp;
	  
	}
}

void max_commer_diviser(int *x,int *y)//求最大公约数
{
  int max,i,min;
  for (i=*y;i>0;i--)
  {
  	if (*x%i==0&&*y%i==0)
  	{
	  	max=i;
	  	break ;
	  	} 
	  	
	 
  }
  min=(*x)*(*y)/max;
  printf ("%d %d\n",max,min);
   
}	





int main()
{   
	int m,n;
	scanf ("%d%d",&m,&n);
	swa (&m,&n);
	max_commer_diviser(&m,&n);

	return 0;
	
}
2019-02-04 18:24:42
#include<stdio.h>
int a,b,c,d; 
int gcd(int a,int b)
{
	if(b==0)
	{
		return a;
	}
	return gcd(b,a%b);
}
main()
{
	scanf("%d%d",&a,&b);
	c=gcd(a,b);
	d=a*b/gcd(a,b);
	printf("%d %d",c,d);


	
}
2019-01-21 18:17:05