求指点异常,最大公约数和最小公倍数的代码

求指点错误,最大公约数和最小公倍数的代码
# include <stdio.h>
main()
{

int m,n,k,t;
printf("请输入需要计算最大公约数的两个数A,B:\n");
scanf("%d,%d",m,n);
if(m<=n)
  {

  k=m;
  do
  {
  t=m%k==0&&n%k==0;k--;
  }
  while(t==0);

  printf("A和B的最大公约数为:%d\n",k);
  printf("A和B的最小公倍数为:%d\n",m*n/k); 
  }
 else
 {

  k=n;
  do
  {
  t=m%k==0&&n%k==0;k--;
  }
  while(t==0);


  printf("A和B的最大公约数为:%d\n",k);
  printf("A和B的最小公倍数为:%d\n",m*n/k); 
}
   
 return 0;


------解决方案--------------------
scanf("%d,%d",&m,&n);
------解决方案--------------------
探讨

现在是表达式有错误,算出来结果不对