从键盘输入两个正整数 a 和 b,求其最大公约数和最小公倍数。

算法思想

利用格式输入语句将输入的两个数分别赋给 a 和 b,然后判断 a 和 b 的关系,如果 a 小于 b,则利用中间变量 t 将其互换。再利用辗转相除法求出最大公约数,进而求出最小公倍数。最后用格式输出语句将其输出。

程序代码

#include <stdio.h>
int main()
{int a,b,c,m,t;printf("请输入两个数:\n");scanf("%d%d",&a,&b);if(a<b){t=a;a=b;b=t;}m=a*b;c=a%b;while(c!=0){a=b;b=c;c=a%b;}printf("最大公约数是:\n%d\n",b);printf("最小公倍数是:\n%d\n",m/b);
}

调试运行结果

当输入的两个数为 15 和 65 时,打印出的结果如下所示:

请输入两个数:
15 65
最大公约数是:
5
最小公倍数是:
195

当输入的两个数为 16 和 72 时,打印出的结果如下所示:

请输入两个数:
16 72
最大公约数是:
8
最小公倍数是:
144

总结

实例中用到了辗转相除法来求最大公约数。在求最小公倍数时要清楚最大公约数和最小公倍数的关系,即两数相乘的积除以这两个数的最大公约数就是最小公倍数。

C语言最大公约数和最小公倍数(辗转相除法)相关推荐

  1. C语言最大公约数和最小公倍数

    首先我们应该知道最大公约数和最小公倍数的基本概念 最大公约数:指两个或多个整数共有约数中最大的一个 最小公倍数:俩数相乘除以最大公约数 一.最大公约数 方法一:穷举法 先令最大公约数max为1,当俩个 ...

  2. c语言最大公约数和最小公倍数_五年级数学最大公因数最小公倍数 练习

    五年级数学最大公因数最小公倍数-练习 一.填空. 1.把36分解质因数是(            ),把60分解质因数是(        ). 2.自然数a除以自然数b,商是15,那么a和b的最大公因 ...

  3. c语言最大公约数和最小公倍数_五年级奥数课堂之七:公因数和公倍数

    乘积尾0的个数 公因数和公倍数的基本概念 公因数的释义 给定若干个整数,如果有一个(些)数是它们共同的因数,那么这个(些)数就叫做它们的公因数.而全部公因数中最大的那个,称为这些整数的最大公因数. 公 ...

  4. 求最大公约数和最小公倍数——辗转相除法(欧几里得算法)、更相减损术、stein算法

    辗转相除法-- 辗转相除法求最大公约数的原理: 两个整数其中较小的数 和 两数相除(较大数除较小数)的余数(使用递归)的最大公约数. 辗转相除法求最小公倍数的原理: 两个整数分别除以最大公约数的结果相 ...

  5. C语言最大公约数,最小公倍数。

    #include<stdio.h>int fas(int x,int y){int a,t;if(x<y){t=x;x=y;y=t;}do{a=x%y;x=y;y=a;}while( ...

  6. C语言 最大公约数和最小公倍数计算

    #include<stdio.h>int maxFactor(int,int); int minMultiple(int,int);void main(){//程序入口int a=0,b= ...

  7. 经典编程习题,用Java实现:矩阵转置、最大公约数和最小公倍数、计算自然对数的底e的值、输出1000以内的回文素数、判断两个年份之间的平闰年情况。

    经典编程习题,用Java实现 1.矩阵转置 2.最大公约数和最小公倍数 3.计算自然对数的底e的值 4.输出1000以内的回文素数 5.判断两个年份之间的平闰年情况 1.矩阵转置 public cla ...

  8. c语言求两个数的最小公倍数辗转相除法,C语言辗转相除法求2个数的最小公约数...

    辗转相除法最大的用途就是用来求两个数的最大公约数. 用(a,b)来表示a和b的最大公约数. 有定理: 已知a,b,c为正整数,若a除以b余c,则(a,b)=(b,c). (证明过程请参考其它资料) 例 ...

  9. c语言辗转相除法约分分数,更相损减法和辗转相除法 求最大公约数和最小公倍数(C语言)...

    假设有两个数a和b,求a,b的最大公约数和最小公倍数实际上是一个问题,得出这两个数的最大公约数就可以算出它们的最小公倍数. 最小公倍数的公式是 a*b/m m为最大公约数 因为 a=m*i; b=m* ...

最新文章

  1. numpy如何生成随机数
  2. 测试start backup和ndb_restore
  3. js测试网络连通情况
  4. win 修改jvm时间_Windows 下修改Tomcat jvm参数
  5. 七种在BIM实施过程中减少浪费的方法
  6. pycharm奇技淫巧 直接通过代码输出函数 refactor —— extract method
  7. python学习高级篇(part7)--特殊属性和特殊方法
  8. linux硬盘保护卡,保护卡下安装Linux
  9. Word2Vec学习笔记(二)
  10. 【clickhouse】创建物化视图数据来源是两张表该怎么写创建语句呢?
  11. WPF界面设计技巧(11)-认知流文档 小议WPF的野心
  12. 20191013:快速排序1.1
  13. CVSNT Manual
  14. java工程师要懂哪些东西_Java工程师都需要懂哪些知识?学实用知识得高薪
  15. HDU2569 彼岸【打表+记忆化递归】
  16. Linux跨平台编译安卓版本protobuf库——趟坑记录
  17. 国产三维CAD/CAM软件SINOVATION10.2版本发布,亮点功能抢先看!
  18. 干货文:企业 IT 基础架构|(精华篇)
  19. java-家庭作业4
  20. python中将字符变为大写_python3 数字转人民币大写

热门文章

  1. 每日一句:I'm afraid I have to remind you that time is up
  2. android ratingbar 点击事件,Android RatingBar基本使用:
  3. Catboost自定义损失函数初探
  4. 聚焦机器人集成应用,看未来工厂“智”变!
  5. 泰罗凹凸曼主题曲谐音
  6. 社会工程学软件_信息工程学院大学生心理健康教育讲座
  7. 过滤器Filter中得到各种路径
  8. 故障转移之starwind共享存储篇
  9. 《零基础学机器学习》笔记-第2课-数学和Python知识
  10. php 腾讯短信接口api,关于腾讯云短信 API 成功调用的分享