|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- 函数1(最大公约数)
- 题目描述
- 输入两个正整数m和n(1<m, n<1000000000),求其最大公约数和最小公倍数。
- 输入
- 有多行,每行2个正整数m和n。
- 输出
- m和n的最大公约数、最小公倍数。
- 样例输入
- 16 24
- 5 7
- 样例输出
- 8 48
- 1 35
- 提示
- 要求:编写求最大公约数和最小公倍数的函数。
复制代码
这格式怎么弄呀
- #include <stdio.h>
- int gcd(int m , int n)
- {
- int d , k ;
- if(! (m % n)) d = n ;
- else if(! (n % m)) d = m ;
- else for(d = 1 , k = 2 ; k < m && k < n ; k ++) if(! (m % k) && ! (n % k)) d = k ;
- return d ;
- }
- int lcm(int m , int n)
- {
- return m * n / gcd(m , n) ;
- }
- int main(void)
- {
- int d[2000][2] , i , j , k , n ;
- scanf("%d" , & n) ;
- for(i = 0 ; i < n ; i ++) scanf("%d%d" , & d[i][0] , & d[i][1]) ;
- for(i = 0 ; i < n ; i ++) printf("%d %d\n" , gcd(d[i][0] , d[i][1]) , lcm(d[i][0] , d[i][1])) ;
- }
复制代码
编译、运行实况:
- D:\0002.Exercise\C>g++ -o x x.c
- D:\0002.Exercise\C>x
- 2
- 16 24
- 5 7
- 8 48
- 1 35
- D:\0002.Exercise\C>
复制代码
|
|