C++求两个整数的最大公约数

// D:\x264-060805-vc6\extras\getopt.c

C++求两个整数的最大公约数

 

static int gcd(a, b)
 int a;
 int b;
{
 int c;

 c = a % b;   /* 除模,即a/b的余数 */
 while (c != 0) { /* 即a不是b的整数倍 */
  a = b;
  b = c;
  c = a % b;
 }

 return b;
}

   

 

C++

#include"iostream.h"
void main()
{int m,n,i,k;

cout<<"please input two numbers:"<<endl;
cin>>m>>n;
i=m*n;
if(m<n) {m=n;n=m;}
while(n!=0)
{
   k=m%n;
   m=n;
   n=k;
}
cout<<"gongyueshu is:"<<m<<endl;
cout<<"gongbeishu is:"<<i/m<<endl;
}
========================

C:

include"stdio.h"

main()
{
 int a,b,num1,num2,temp;
 printf("please input two numbers:\n");
 scanf("%d,%d",&num1,&num2);
 if(num1  { temp=num1;
  num1=num2; 
  num2=temp;
 }
a=num1;b=num2;
while(b!=0)
 {
  temp=a%b;
  a=b;
  b=temp;
 }
printf("gongyueshu:%d\n",a);
printf("gongbeishu:%d\n",num1*num2/a);
}