最大公约数,指两个或多个整数共有约数中最大的一个。想要实现输出两个数的最大公约数,可以先选出两个数中小的一个,比方说是b,然后从b数字开始每次减1,分别除a和b,这样找到的两个数的共同约数恰好就是最大公约数:

#include <stdio.h>
int main()
{int a,b,i = 0,n;printf("请输入两个整数:");scanf("%d%d",&a,&b);n = a;if(b<n){n = b;}for(i=n; i>0; i--){if(a%i==0&&b%i==0){printf("最大公约数为%d\n",i);break;}}system("pause");return 0;
}

除此之外,还可以用辗转相除法来实现。用大的数字除以小的数字,如果能整除,小的数字就是它们的最大公约数;如果不能整除,就用余数除以刚才的除数:

#include <stdio.h>
int main()
{int a = 0;int b = 0;printf("请输入两个整数:");scanf("%d %d",&a,&b);while(a%b != 0){int tmp = a%b;a = b;b = tmp;}printf("最大公约数为%d\n",b);system("pause");return 0;
}

C语言求两个数的最大公约数相关推荐

  1. php怎么求最小公倍数,C++_详解C语言求两个数的最大公约数及最小公倍数的方法,求两个正整数的最大公约数nbs - phpStudy...

    详解C语言求两个数的最大公约数及最小公倍数的方法 求两个正整数的最大公约数 思路:这是一个很基本的问题,最常见的就是两种方法,辗转相除法和辗转相减法.通式分别为 f(x, y) = f(y, x%y) ...

  2. c语言中两个数最大公约数怎么求,C语言求两个数中最大公约数

    在C语言中如何求两个数的最大公约数呢?下面用三种方法进行求解. 方法一:穷举法. 先比较两个数的大小,然后找出较小数t,最后判断t为何值时两个数都能整除,此方法效率较低. 代码如下:#include ...

  3. 暴力 gcd __gcd (详解)C语言求两个数的最大公约数

    首先我们要先知道gcd是什么东西? GCD作为缩写意义有多种.它通常表示最大公约数(greatest common divisor,简写为gcd:或highest common factor,简写为h ...

  4. 用C语言求两个数的最大公约数和最小公倍数

    求最大公约数,就是求较小的一个数的约数同时也能被较大的数整除,把他求到最大就可以了. 求最小公倍数,就是求较大的一个数的倍数(同时也能整除较小的数),求最小的. 1. # include <st ...

  5. c语言:求两个数的最大公约数与最小公倍数

    世人谓我恋长安,其实只恋长安某. 初学,如有错误,感谢指出. #include<stdio.h> int max(int a1, int b1); int min (int a2, int ...

  6. c语言如何求两个数最大公约数,c语言如何求两个数的最大公约数

    c语言求两个数的最大公约数的方法:首先新建一个C语言源程序,并直接输入两个正整数a和b:然后取a,b这两个数中的较小值,存放到变量n中:接着从两个数a和b中的较小数开始,依次逐个减小1:.最后点击工具 ...

  7. C语言试题七十三之请编写函数求两个数的最大公约数

    1. 题目 编写函数:求两个数的最大公约数. 如果有一个自然数a能被自然数b整除,则称a为b的倍数,b为a的约数.几个自然数公有的约数,叫做这几个自然数的公约数.公约数中最大的一个公约数,称为这几个自 ...

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

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

  9. c语言用迭代法求最大公约数,用迭代法求两个数的最大公约数和最小公倍数

    c语言论文 用迭代法求两个数的最大公约数和最小公倍数 化工09110605 摘要:迭代法是一种循环控制语句和循环结构程序的设计方法.在计算机解决问 题的时候,总希望从复杂的问题中找到规律,并归结为简单 ...

最新文章

  1. linux系统获取用户信息失败怎么办,异常详细信息: System.Data.SqlClient.SqlException: 用户 'NT AUTHORITY\IUSR' 登录失败解决办法...
  2. Kafka设计解析(六)- Kafka高性能关键技术解析
  3. wireshark应用--wireshark原来那么简单
  4. SQL Server之索引解析(二)
  5. echart vue 图表大小_vue里echarts自适应窗口大小改变
  6. 阿里云飞天洛神2.0:高性能网络软硬一体化技术实践
  7. ajax动态生成表格
  8. SDF(Signed-distance-field: 有向距离场)(12): Shadow And AO(WebGL实现)增强立体感
  9. 多媒体个人计算机软件系统,HP推出新的多媒体个人计算机
  10. UNIX环境高级编程(第2版)
  11. 算法设计与分析知识点整理
  12. Qt实现类似QQ好友列表
  13. 一位 Google 大佬的辞职感言..
  14. vscode跳转返回快捷键
  15. 神奇的分形艺术: Mandelbrot集和Julia集
  16. sklearn机器学习:随机森林学习与调参
  17. 微信,支付宝支付,微信公众号小程序授权等
  18. 设计模式(三)代理设计模式
  19. Python基础学习备忘录上
  20. 视频伪原创批量处理工具 抖音短视频解去水印

热门文章

  1. 学java还是python还是php-大一的时候学习Python,大二学java好还是php?
  2. 在vSAN中存储ESXi核心转储和暂存分区(2074026)
  3. Java基础学习总结(171)——CountDownLatch 使用总结
  4. 服务器为什么要装操作系统,服务器需要安装操作系统吗
  5. html表格中加横线,表格下划线怎么打出来
  6. Flutter知识点:数据存储之sqflite
  7. 太空大战背景移动的几种方式
  8. Mapreduce 进阶
  9. go 语言的web 框架
  10. HTML-CSS-JS Prettify报错Node.js was not found 解决方法