源代码:
#include<stdio.h>
int main()
{
int m,n;
int gcd(int o,int p);
printf("请分别输入非负两个整数m、n:\n");
scanf(“%d”,&m);
scanf(“%d”,&n);
if(m<=0||n<=0)
printf("请输入非零整数!");
else
gcd(m,n);
}
int gcd(int o,int p) /******欧几里得算法******/
{
int j,k;
if(o>p)
{
j=o%p;
if(j==0)
{
printf("m、n的最大公因数为%d。",p);
return p;
}
else
gcd(p,j);
}
else
{
k=o;
o=p;
p=k;
gcd(o,p);
}
}
运行结果: