求最大公约数
周末上午睡到12点,下午随意搞几道ACM题,求最大公约数一般都是用最著名的欧几里得算法,写了程序AC成功
- 题目描述:
输入两个正整数,求其最大公约数。
- 输入:
测试数据有多组,每组输入两个正整数。
- 输出:
对于每组输入,请输出其最大公约数。
- 样例输入:
49 14
- 样例输出:
7
#include <stdio.h>#include <stdlib.h>int gcd(int m, int n);int main(){int m, n, gcdnum;while(scanf("%d%d",&m,&n) != EOF){gcdnum = gcd(m, n);printf("%d\n",gcdnum);}return 0;}/** * Description:欧几里得算法实现 */int gcd(int m, int n){int temp, r;//大数赋值m,小数赋值nif(m < n){temp = m;m = n;n = temp;}while(n){r = m % n;m = n;n = r;}return m;}