考研机试题及详细答案.docxVIP

  • 4
  • 0
  • 约7.01千字
  • 约 9页
  • 2026-04-25 发布于河北
  • 举报

考研机试题及详细答案

一、基础编程(必考题,难度:简单)

题目1:求两个整数的最大公约数和最小公倍数

题目描述:输入两个正整数a和b(1≤a,b≤10?),输出它们的最大公约数(GCD)和最小公倍数(LCM)。注意:最小公倍数可能超出int范围,需用longlong存储。

输入示例:1218

输出示例:636

详细解析

核心思路:最大公约数用辗转相除法(欧几里得算法)求解,最小公倍数=两数乘积/最大公约数(需先求GCD,避免溢出)。

辗转相除法原理:对于两个整数a和b(ab),a和b的最大公约数等于b和a%b的最大公约数,重复此过程,直到余数为0,此时的除数即为最大公约数。

代码实现(C语言)

c

#includestdio.h

//求最大公约数

longlonggcd(longlonga,longlongb){

while(b!=0){

longlongtemp=b;

b=a%b;

a=temp;

}

returna;

}

intmain(){

longlonga,b;

scanf(%lld%lld,a,b);

longlongg=gcd(a,b);

longlonglcm=a

文档评论(0)

1亿VIP精品文档

相关文档