最大公约数

总时间限制: 
1000ms 
内存限制: 
65536kB
描述
给定两个正整数,求它们的最大公约数。
输入
有多组数据,每行为两个正整数,且不超过int可以表示的范围。
输出
行对应输出最大公约数。
样例输入
4 8
8 6
200 300
样例输出
4
2
100
提示
系统的测试文件中数据有很多组,因此同学们在程序里要写循环读取数据并判断是否读完文件的代码。
如果不知道如何处理,可以参考下面的两个模板:
C++这样写:

while(cin>>x>>y)
{
求x和y最大公约数的代码
}

C这样写:

while(scanf(%x %y",&x,&y)!=EOF)
{
求x和y最大公约数的代码
}
#include<stdio.h>
#include<iostream>
using namespace std;
int gcd(int m, int n)
{
  return n? gcd(n, m%n) : m;
}
int main() 
{
   int a,b;
  while(cin>>a>>b)
  {
   cout<<gcd(a,b)<<endl;
  }	  
    return 0;
} 

//g = gcd(a, b);
//printf("%d 0x%x 0%o\n", g, g, g);  分别输出十进制、十六进制、八进制

  

posted @ 2018-04-30 21:33  道微真理  阅读(8859)  评论(0编辑  收藏  举报