复兴岛开发2017:用C语言编程,求两个数M和N的公约数.

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/01 11:35:53

printf("Input two numbers:\n");
int M,N;
scanf("%d%d",&M,&N);
for(int i=(M>N? N:M);i>=2;i--)
if((M%i==0)&&(N%i==0))
printf("%3d",i);
printf("\n");

为什么老有人要这个程序呢,给你个短的
//辗转相除法求m,n最大公约数
int gcd(int m,int n)
{
int t;
while(t=m%n)
{
m=n;
n=t;
}
return n;
}

int f(int M , int N)
{
int temp;
if ( M< N )
{
temp = N;
N = big;
big = M;
}

while ( M%N )
{
temp = M%N;
M= N;
N = temp;
}
return N;
}

秀才的正解

寒幸巴达的算法一个

这种程序几乎每本c教材上都有啊,呵呵,自己动动手,别老依赖别人啊。