问题及代码:
/*
*Copyright (c)2016,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:main.cpp
*作 者:王艺霖
*完成日期:2016年3月20日
*版 本 号:v1.0
*
*问题描述:编程序,用递归函数求出两个数的最大公约数。
*
*输入描述:输入两个数a,b
*输出描述:输出两个数的最大公约数
*/
#include <iostream>
using namespace std;
int gcd(int x, int y);
void main()
{
int m,n;
cout<<"输入两个数字:";
cin>>m>>n;
cout<<"最大公约数:";
cout<<gcd(m,n)<<endl;
}
int gcd(int a, int b)
{
int i;
if (b==0)
i=a;
else
i=gcd(b,a%b);
return i;
}
运行结果:
知识点总结:
递归就是自己调用自己,最大公约数的求法
学习心得:
运用递归越来越熟练