c语言求任意两个正整数的最大公约数与最小公倍数。

c语言求任意两个正整数的最大公约数与最小公倍数。

问题描述:

输入两个正整数m,n
输出m和n的最大公约数和最小公倍数。

#include <stdio.h>
int main() {
    int m,n,t,max,min;
    scanf("%d %d",&m,&n);
    for(t=2; t<=n; t++) {
        if(m%t==0&&n%t==0)
            max=t;
    }
    min=(m*n)/max;
    printf("%d %d",max,min);
    return 0;
}


 有帮助请采纳

#include "stdio.h"
#include "conio.h"
main()
{
  int a,b,num1,num2,temp;
  printf("please input two numbers:\n");
  scanf("%d,%d",&num1,&num2);
  if(num1<num2)
  {
    temp=num1;
    num1=num2;
    num2=temp;
  }
  a=num1;b=num2;
  while(b!=0)/*利用辗除法,直到b为0为止*/
  {
    temp=a%b;
    a=b;
    b=temp;
  }
  printf("最大公约数:%d\n",a);
  printf("最小公倍数:%d\n",num1*num2/a);
  getch();
}