原文地址:https://my.oschina.net/meiguizhinian/blog/873713
Description
编写一个程序,求两个正整数M,N的最大公约数。
The Input
你的数据需要从标准输入设备(通常为键盘)中读入多组测试数据。每组输入数据由一行组成,每行输入两个正整数M和N,并且在M和N之间用一个空格间隔, M和N都不大于10,000。在行首和行尾没有多余的空格。
The Output
对每组测试数据,你的程序需要向标准输出文件(通常为启动该程序的文本终端,例如你在Windows中启动该程序所用的命令行终端)依次输出一组对应的答案。所有数据前后不要输出多余的空行,两组数据之间也不要输出多余的空行。每组输出数据由一行组成,每行由一个数组成,在行首和行尾不要输出多余的空格。
Sample Input
6 3 4 2
Sample Output
3 2
代码
#include <stdio.h>
int easy06_gcd_division(int a,int b) {
if (a && b) {
int t;
if (a<b) {
t=a;a=b;b=t;
}
while (b) {
t=a%b;a=b;b=t;
}
return a;
}
return 0;
}
int main() {
int m,n;
while (scanf("%d %d",&m,&n)!=EOF) {
printf("%d\n",easy06_gcd_division(m, n));
}
return 0;
}