您的位置:首页 > 其它

题目1056:最大公约数

2014-02-28 16:04 204 查看
// 递归法

#include<stdio.h>

int gcd(int a,int b){

if(b==0) return a; // 若b为零,则最大公约数为a

else return gcd(b,a%b); // 否则,则改为求b和a%b的最大公约数

}

int main()

{

int a,b;

while(scanf("%d%d",&a,&b)!=EOF){

printf("%d\n",gcd(a,b));

}

return 0;

}

// 非递归法

#include<stdio.h>

int main()

{

int m,n,t;

while(scanf("%d %d",&m,&n)!=EOF){

while(n>0){

m=m%n;

t=n;

n=m;

m=t;

}

printf("%d\n",m);

}

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: