C语言怎么编程序求出从键盘上输入的两个正整数a,b的最大公约数和最小

2024-10-29 22:59:22
推荐回答(2个)
回答1:

为什么要用枚举,用欧几里得算法不知道多好!枚举就

for(i = min(a,b)/2;i>=2;i--)
    if(a%i == 0 && b%i == 0) break;

这样去找咯。。。

回答2:

#include
main()
{
int a,b,i,t,k;
printf("输入两个数a>1,b>1\n");
scanf("%d %d",&a,&b);
if(a>b)
{
t=a;a=b;b=t;
}
for(i=1;i<=a;i++)
if(a%i==0&&b%i==0)
k=i;
printf("%d",k);
}