请教:我写的"最小公倍数与最大公约数"的求法?调试有问题!!待解

来源:互联网 发布:农业大学网络课程 编辑:程序博客网 时间:2024/05/17 22:50

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
   int n,m,i,j,k,temp,r,p1,p2;
   printf("输入两个整数:");
   scanf("%d%d",&n,&m);  

if(n>m)                                /*保证m>n*/


       temp=n;
       n=m;
       m=temp;
      }
    for(i=1;i<=n;i++)                                /*求得最大公约数*/
      if(m%i==0&&n%i==0)
        r=i;
    for(j=1;j<=n;j++)                                /*求解最小公倍数*/
      {for(k=1;k<=m;k++)
         { p1=j*m;
           p2=k*n;
           if(p1==p2)                                   /*求得即跳出*/
           break ;
         }
      }
   printf("最大公约数:%d/n",r);
   printf("最小公倍数:%d/n",p1);

   system("PAUSE");
   return 0;
}