m0_62703284 2021-10-29 09:37 采纳率: 100%
浏览 256
已结题

C语言实训练习(欧几里得求最大公约数

编写程序,求两个数的最大公约数(GCD),例如:12 和 28 的最大公约数是 4。
求最大公约数的经典算法是欧几里德(Euclid)算法,方法如下。分别让变量 m 和 n 存储两个数的值。如果 n 为 0,那么停止操作,m 中的值就是 GCD;否则,计算 m 除以 n 的余数 r,把 n 保存到 m 中,并把余数 r 保存到 n 中。然后重复上述过程,每次都先判定 n 是否为 0。

输入格式:

在一行中给出 2 个整数 A 和 B,其中 0≤A≤2
30
, 0≤B≤2
30

输出格式:

输出 A 和 B 的最大公约数。

输入样例:

  • 写回答

3条回答 默认 最新

  • CSDN专家-黄老师 2021-10-29 09:39
    关注
    
    #include <stdio.h>
    
    int main()
        {
            int m = 0;
            int n = 0;
            int r = 0;
            scanf("%d %d",&m,&n);
            while(r=m%n)
            {
                m = n;
                n = r;
            }
            printf("%d\n",n);
            return 0;
        }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月6日
  • 已采纳回答 10月29日
  • 创建了问题 10月29日

悬赏问题

  • ¥20 fluent无法启动
  • ¥15 孟德尔随机化r语言运行问题
  • ¥15 pyinstaller编译的时候出现No module named 'imp'
  • ¥15 nirs_kit中打码怎么看(打码文件是csv格式)
  • ¥15 怎么把多于硬盘空间放到根目录下
  • ¥15 Matlab问题解答有两个问题
  • ¥15 LCD12864中文显示
  • ¥15 在使用CH341SER.EXE时不小心把所有驱动文件删除了怎么解决
  • ¥15 gsoap生成onvif框架
  • ¥15 有关sql server business intellige安装,包括SSDT、SSMS。