http://oj.acm.zstu.edu.cn/JudgeOnline/problem.php?cid=3703&pid=9
Description
求2个整数a、b(a>b)的最大公约数。
Input
多组测试数据,第一行输入整数T,表示组数 然后是T行,每行输入2个整数分别代表a和b
Output
对于每组测试数据输出1行,值为a和b的最大公约数
Sample Input
2
18 12
6 5
Sample Output
6
1
参考文章:https://blog.csdn.net/weixin_43272781/article/details/86547908
#include <stdio.h>
#include <stdlib.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int gcd(int x,int y){
int z,r;
while(y!=0){
if(x<y)
{
z=x;
x=y;
y=z;
}
r=x%y;
x=y;
y=r;
}
return x;
}
int main(int argc, char *argv[]) {
int n;
while(scanf("%d",&n)!=EOF){
int i;
for(i=1;i<=n;i++){
int a,b;
scanf("%d %d",&a,&b);
printf("%d\n",gcd(a,b));
}
}
return 0;
}