探究如何求两数的最大公约数(两种方法)

来源:互联网 发布:阿里云系统与安卓区别 编辑:程序博客网 时间:2024/05/18 03:01
*/ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:zuidagongyueshu.cpp * 作者:常轩 * 微信公众号:Worldhello * 完成日期:2016年4月23日 * 版本号:V1.0 * 问题描述:探究求两数最大公约数的方法 * 程序输入:32 8 * 程序输出:见运行结果 */#include <stdio.h>   //递归法int main(){int gcd(int x,int y);    int a,b,g;scanf("%d %d",&a,&b);g=gcd(a,b);printf("最大公约数是:%d",g);    return 0;}int gcd(int x,int y){    if(x<=y)if(y%x==0)return(x);elsereturn(gcd(x,y%x));elsereturn gcd(y,x);}#include <stdio.h>  //普通法int main(){int gcd(int x,int y);    int a,b,g;scanf("%d %d",&a,&b);g=gcd(a,b);printf("最大公约数是:%d",g);    return 0;}int gcd(int x,int y){    if(x>y)    {        int t;        t=x;x=y;y=t;    }    int i,a;    for(i=1;i<=x;i++)    {        if(x%i==0&&y%i==0)        {            a=i;        }    }    return a;}

运行结果:


心得:

      山重水复疑无路,柳暗花明又一村

0 0
原创粉丝点击