Rita li

You give me a future, I love you the whole once

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

(a,b)=(b,amodb)

//欧几里得算法的非递归实现
#include <stdio.h> #include <stdlib.h> int gcd(int a,int b) { while(b!=0)//b不为0一直持续 { int temp=a%b; a=b;//使a变成b b=temp;//使b变成a%b } return a;//b为0时,返回a } int main() { int a,b; while(scanf("%d%d",&a,&b)!=EOF) { printf("%d\n",gcd(a,b)); } return 0; }

 

欧几里得算法的递归实现
#include <stdio.h>
#include <stdlib.h>
int gcd(int a,int b)
{
    if(b==0)return a;
    else return gcd(b,a%b);
}
int main()
{
    int a,b;
    while(scanf("%d%d",&a,&b)!=EOF)
    {
        printf("%d\n",gcd(a,b));
    }
    return 0;
}

 

posted on 2014-04-08 20:01  Rita li  阅读(243)  评论(0编辑  收藏  举报