第12周项目3 用递归函数求解(3、求两个数的最大公约数)

本文介绍了如何运用递归函数来解决求解两个数的最大公约数问题,通过学习心得展现了从辗转相除法到递归实现的思维过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/
*copyright (c)2014,烟台大学计算机学院
*All rights reserved
*文件名称:qwe.cpp
*作者:孙春红
*完成日期:2014年11月17日
*版本号:v1.0
*
*问题描述:编写递归函数求两个数的最大公约数;
*输入描述:输入两个数;
*程序输出:输出两个数的最大公约数。
*/

#include <iostream>

using namespace std;

int gsds(int,int);
int main ()
{
    int a,b,g;;
    cout <<"请输入两个数:"<<" ";
    cin>>a>>b;
    g=gsds(a,b);
    cout <<"两个数的最大公约数是:"<<"  "<<g<<endl;
    return 0;
}
int gsds (int a,int b)
{
    int r;
    if (a%b!=0)
        r=gsds(b,a%b);
    else
        r=b;
    return r;
}

运行结果:


知识点总结:

学会使用递归函数求解

学习心得:

在看到求最大公约数时,就想到以前所编写的程序,利用辗转相除法求最大公约数,再结合递归函数的用法,才写出现在的程序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值