| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2908 人关注过本帖
标题:最大公约数,为什么不行?
只看楼主 加入收藏
虫的传人
Rank: 1
等 级:新手上路
帖 子:88
专家分:0
注 册:2006-3-5
收藏
得分:0 

楼主注意红色部分,还有c=c+1跟c++是等同的
ps:这个程序顺便也求了最小公倍数


#include<stdio.h>

void main()
{
int x,y,a,b,d=1,e,i=2;
printf("Please input two numbers:\n");
scanf("%d%d",&x,&y);
a=x,b=y;
do
{
for(;!(a%i)&&!(b%i);)
{a=a/i;b=b/i;d=d*i;};
i++;
}
while(i<=a&&i<=b);
e=(x*y)/d;
printf("The two numbers are:%d,%d\n",x,y);
printf("最大公约数:%d\n",d);
printf("最小公倍数:%d\n",e);
}


好马不吃回头草 然而,我不是好马 可见,坏马也不吃回头草
2006-03-06 11:19
BugEyes
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2006-1-10
收藏
得分:0 
int fun(int a,int b)
{
int t=(a>b)?b:a;
while(t>1)
{
if(a%t==0&&b%t==0)
break;
t--;
}
return t;
}

学前班校长,个人blog:http://bugeyes.blog.
2006-03-06 15:27
偶成
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2006-3-4
收藏
得分:0 

我们学过是用欧几里德算法做的.
我用c-free测试过.可以的.
main()
{
int a,b,r,x;
scanf("%d,%d",&a,&b);
if(a<b)
{x=b;
b=a;
a=x;
}
while(b!=0)
{
r=a%b;
a=b;
b=r;
}
printf("%d",a);
}


几年前,丢失了求知欲,游荡在游戏世界中. 而今寻找回了求知欲,希望通过自学充实自己.努力中...
2006-03-06 16:25
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
以下是引用偶成在2006-3-6 16:25:00的发言:

我们学过是用欧几里德算法做的.
我用c-free测试过.可以的.
main()
{
int a,b,r,x;
scanf("%d,%d",&a,&b);
if(a<b)
{x=b;
b=a;
a=x;
}
while(b!=0)
{
r=a%b;
a=b;
b=r;
}
printf("%d",a);
}

就是辗转相除


叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-03-06 16:28
mwjpiero
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2006-3-4
收藏
得分:0 

呵呵,这样的回答蛮可爱的

2006-03-06 16:31
form521
Rank: 1
来 自:西安
等 级:新手上路
帖 子:162
专家分:4
注 册:2006-12-21
收藏
得分:0 
#include<stdio.h>
int main(void)
{
    int m,n,t,r;
    scanf("%d%d",&m,&n);
    for(t=1;(t<=m&&t<=n);++t)
    {
    if(m%t==0&&n%t==0)
    r=t;
    }
      printf("%d\n",r);
      system("pause");
      return 0;
}

人生就是个死循环,退出这个循环的条件是系统停止。
2008-03-27 17:29
mqh21364
Rank: 1
等 级:新手上路
帖 子:642
专家分:0
注 册:2008-2-28
收藏
得分:0 
怎么没人听feng1256 的阿?

前不见古人,后不见来者。念天地之悠悠,独怆然而涕下。
2008-03-27 17:58
now
Rank: 1
来 自:广州
等 级:新手上路
帖 子:544
专家分:0
注 册:2007-11-9
收藏
得分:0 
scanf("%d%d\n",&x,&y); 有时弄不明白,为什么好多人都要在scanf中要加个换行符。。。
2008-03-27 20:07
xiaoKK
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-3-28
收藏
得分:0 
回复 1# 的帖子
http://bbs.

答案在这里...

自己看看是不是...

[[it] 本帖最后由 xiaoKK 于 2008-3-28 09:00 编辑 [/it]]
2008-03-28 08:57
wangyucai
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-3-28
收藏
得分:0 
好像不能输入  可能你输入语句后面的"\n"有点问题,我把他去掉后就可以得到正确答案.

/* Note:Your choice is C IDE */
#include "stdio.h"
 void main()
{
int a,b,c,d;
scanf("%d%d",&a,&b);
for(c=1;c<=a&&c<=b;c=c+1)
{if (a%c==0&&b%c==0) d=c;}
printf("%d\n",d);
}
2008-03-28 10:04
快速回复:最大公约数,为什么不行?
数据加载中...
 
   



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

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