|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
系统一直判断我的代码错误,我也不知道哪里错了,请给位帮忙看一下代码,谢谢谢谢了!!
下面是题目
输入格式
一共1行数据,包含2个整数m和n,之间使用一个空格分隔。
输出格式
输出2行,第一行为最大公约数,第二行为最小公倍数,每行行末都有一个换行符。
数据规模与约定
整数m的值约定为 1 ≤ m ≤ 1 000 000 000。
整数n的值约定为 1 ≤ n ≤ 1 000 000 000。
样例输入
32 48
样例输出
16
96
- #include <stdio.h>
- int main()
- {
- int m, n, t, gcd, k;
- scanf("%d %d", &m, &n);
- if(m < n)//如果n》m就互换
- {
- t = m; m = n; n = t;
- }
- if(n != 0)//最后分母不为0
- {
- for(k = 1; k < n; k++)//筛选能同时被m和n整除的最大数,为最大公因数
- {
- if(m % k == 0 && n % k == 0)
- {
- gcd = k;
- }
- }
- printf("%d\n", gcd);
- printf("%d\n", (m * n) / gcd);//最小公倍数 = (m * n)/ 最大公倍数
- }
- return 0;
- }
复制代码 |
|