标题:1062: 最大公约数;下边的为什么不行 求大佬指教
只看楼主
QQ1236789
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2019-11-3
 问题点数:0 回复次数:1 
1062: 最大公约数;下边的为什么不行 求大佬指教
#include<stdio.h>
int main()
{
    int m,n,i,t,r;
    scanf("%d %d",&m,&n);
    t=1;
    for(i=2;i<m&&i<n;i++)
    {
        if(m%i==0&&n%i==0)
        t=0,r=i;
    }
    printf("%d",r);
    return 0;
}
搜索更多相关主题的帖子: int 最大公约数 printf printf i++ return return int i++ 最大公约数 
2019-11-12 19:24
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1728
专家分:3216
注 册:2015-12-2
得分:0 
for(i=2;i<m&&i<n;i++)
最大公约数允许等于吧,for(i=2;i<=m&&i<=n;i++)
另外求最大公约数一般用辗转相除法效率较高
#include<stdio.h>
int main()
{
    int m,n,r,t;
    scanf("%d %d",&m,&n);
   if(m<n)
   {
       t=m;
       m=n;
       n=t;
   }
    while(r)
    {
        r=m%n;
        m=n;
        n=r;
    }
    printf("%d",m);
    return 0;
}
2019-11-12 19:51



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-497768-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.055397 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved