标签:
/* 描述 小明被一个问题给难住了,现在需要你帮帮忙。问题是:给出两个正整数,求出它们的最大公约数和最小公倍数。 输入 第一行输入一个整数n(0<n<=10000),表示有n组测试数据; 随后的n行输入两个整数i,j(0<i,j<=32767)。 输出 输出每组测试数据的最大公约数和最小公倍数 样例输入 3 6 6 12 11 33 22 样例输出 6 6 1 132 11 66 */ /* Hello, World! 3 6 6 最大公约数:6 最小公倍数:6 12 11 最大公约数:1 最小公倍数:132 33 22 最大公约数:11 最小公倍数:66 */ #include <stdio.h> //最大公约数 int gcd(int a,int b) { if (a<b) return gcd(b,a); else if (b==0) return a; else return gcd(b,a%b); } //最小公倍数 int lcm(int a,int b) { return a*b/gcd(a,b); } int main(int argc, const char * argv[]) { // insert code here... printf("Hello, World!\n"); int a,b,n; scanf("%d",&n); while (n>0) { scanf("%d%d",&a,&b); printf("最大公约数:%d\n",gcd(a,b)); printf("最小公倍数:%d\n",lcm(a,b)); n--; } return 0; }
标签:
原文地址:http://www.cnblogs.com/yang-guang-girl/p/4239673.html