求两个数的最大公约数的程序。。。谢谢
/*
最小公约数
和最大公倍数
*/
#include <stdio.h>
#include <math.h>
int MaxDiv(int,int);
int MinDum(int,int);
int MaxDiv(int a, int b) /*最大公约数 */
{
int t;
if(a>b)
{
t=a;
a=b;
b=t;
}
while(b%a!=0)
{
t=b%a;
b=a;
a=t;
}
return a;
}
int MinDum(int a,int b) /*最小公倍数 */
{
int t,sum;
t=MaxDiv(a,b);
sum=(a/t)*(b/t)*t;
return sum;
}
int main(void)
{
int a,b,t;
if(scanf("%d,%d",&a,&b)==2)
{
t=MaxDiv(a,b);
printf("the max div is %d\n",t);
t=MinDum(a,b);
printf("the Min Dum is %d\n",t);
getchar();
}
else
{
printf("input err\n");
getchar();
}
getchar();
return 0;
}
综合别人的加自己的思考......
[此贴子已经被作者于2007-4-11 15:44:13编辑过]