| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1534 人关注过本帖
标题:求助,编写求解最大公约数的函数
只看楼主 加入收藏
smileRan
Rank: 1
等 级:新手上路
帖 子:14
专家分:5
注 册:2011-4-4
结帖率:0
收藏
 问题点数:0 回复次数:17 
求助,编写求解最大公约数的函数
求助:
    用两种方法求最大公约数
    1,定义一个函数int gy(int x,int y)求解两个数的最大公约数。
    2,用相减法求最大公约数


搜索更多相关主题的帖子: 公约数 
2011-04-04 15:49
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:0 
只会第一种
程序代码:
int gcd (int u,int v) {

        int temp;

        while (v!=0) {
                temp = u%v;
                u=v;
                v=temp;
        }
        return u;
}

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-04-04 16:17
wujieru
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:1
帖 子:1108
专家分:1939
注 册:2010-10-9
收藏
得分:0 
楼上别太爱现
2011-04-04 16:32
pcbaichi
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:486
专家分:1185
注 册:2010-11-13
收藏
得分:0 
总是贴源码,只能说于人不利,而利己

免费赠送河蟹一只
2011-04-04 16:42
wujieru
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:1
帖 子:1108
专家分:1939
注 册:2010-10-9
收藏
得分:0 
你太爱现 对谁都没有好处
2011-04-04 16:43
pcbaichi
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:486
专家分:1185
注 册:2010-11-13
收藏
得分:0 
lz自己去学习更相减损法吧

免费赠送河蟹一只
2011-04-04 16:43
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:0 
以下是引用wujieru在2011-4-4 16:32:46的发言:

楼上别太爱现

书里的例题, 我拿来主义而已~~

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-04-04 16:43
wujieru
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:1
帖 子:1108
专家分:1939
注 册:2010-10-9
收藏
得分:0 
还好意思说 那你就让LZ自己看书先
2011-04-04 16:45
smileRan
Rank: 1
等 级:新手上路
帖 子:14
专家分:5
注 册:2011-4-4
收藏
得分:0 
回复 3楼 wujieru
为什么这样还是错?
#include<stdio.h>
int gy(int x,int y)
{
    if(y==0)
    return x;
    else
    return gy(y,x%y);
}

main()
{
    int a,b,t;
    printf("请输入两个数:\n");
    scanf("%d,%d",&a,&b);
    if(a<b)
    int gy=(a,b);
    printf("最大公约数为:%d\n",gy);
}
2011-04-04 17:34
pcbaichi
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:486
专家分:1185
注 册:2010-11-13
收藏
得分:0 
回复 9楼 smileRan
#include<stdio.h>
int gy(int x,int y)
{
    if(x==0)return y;
    else return y==0?x:gy(y,x%y);
}

main()
{
    int a,b;
    printf("请输入两个数:\n");
    scanf("%d%d",&a,&b);
    printf("最大公约数为:%d\n",gy(a,b));
}
递归你没弄明白,还是先放一边吧

免费赠送河蟹一只
2011-04-04 17:54
快速回复:求助,编写求解最大公约数的函数
数据加载中...
 
   



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

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