问题及代码:
/*
*Copyright(c)2016,烟台大学计算机与控制工程学院
*All right reserved.
*文件名称:77.cpp
*作 者:董凯琦
*完成日期:2016年3月20日
*版 本 号:v1.0
*
*问题描述:求四个数的最大公约数
*输入描述:四个整数
*程序输出:一个整数,为这四个整数的最大公约数
*/
#include <iostream>
using namespace std;
int gcd(int x,int y);
int gcds(int x,int y,int z,int w);
int main()
{
int a,b,c,d,g;
cin>>a>>b>>c>>d;
g=gcds(a,b,c,d);
cout<<"最大公约数是:"<<g;
return 0;
}
int gcd(int x,int y)
{
int r;
while(y!=0)
{
r=x%y;
x=y;
y=r;
}
return x;
}
int gcds(int x,int y,int z,int w)
{
return gcd(gcd(x,y),gcd(z,w));
}
运行结果:
知识点总结:
从这个程序中,我们可以进一步学习到如何自定义函数,而且了解到了如何灵活运用自定义函数!
学习心得:
起初没有思路,只知道先两个数两个数的求最大公约数,没有想到要借助自定义函数。其次,要注意主函数里调用的时候函数名要匹配正确。g=gcds(a,b,c,d)!由于马虎误写成g=gcd(a,b,c,d)